Show HN: WrapAPI v2 – Build APIs, scrapers, bots on any website - <AUTHOR> https://wrapapi.com/v2 <comment><USER2> Suggestion: Please be upfront about pricing. I've been bitten with similar tool dying because they were too shy to ask for money.

<comment><USER3> They have a link to the pricing page[1] on the navbar

[1] [https://wrapapi.com/v2#/pricing](https://wrapapi.com/v2#/pricing)

<comment><AUTHOR> Thanks for linking to this, chipperyman573! The parent comment used to be valid, but we added a dollar amount for the "Business" plan based on this and a few other comments; we are still willing to discuss discounts for non- profits, smaller companies, etc.

</comment></comment></comment><comment><USER4> I've always felt that I service like this would be great for Code for America projects. A big problem I have with creating technology applications for civic goods is that the government is _terrible_ at providing open data. Even when they do open source civic data, they do a terrible job of it.

An example of this is California drought data: automatically grabbing data on the drought is incredibly difficult because it involves scraping HTML tables. I tried to build an API that presents drought data so volunteers would have an easier time building out data visualizations. I ended up just getting exhausted doing all the scraping work.

I then moved onto a new project: building a free-to-use Padmapper for affordable housing. The data for income restricted apartment units are driven by a government contracted vendor. A city county will declare income stabilization policies and legally enforce them against landowners and then the landowners would send over their list of units to the vendor.

This would be great except the vendor does the bare minimum. Padmapper looks amazing but, really, it's only applicable for the upper middle class due to explosive housing costs in the Bay Area. So, in order to provide a more modern website and mobile application for the community, I started to scrape the vendor's website. It was terrible. I kept getting throttled. So I gave up.

<comment><USER5> What was the vendor's website?

<comment><USER4> socialserve.com

</comment></comment></comment><comment><AUTHOR> Hi everyone! We just released the second version of WrapAPI

We have a new WrapAPI API Builder looks like a browser, and is as easy to use as one too. You can define your API's inputs with a quick tap on the address bar, and point and click at the data you want to extract.

We also have a Chrome extension is smarter and better-integrated than ever. It records your requests and It'll automatically create parameter inputs for the values that change between requests to the same endpoints. The contents of your captures are immediately ready for you to start defining outputs and data to extract too.

Let me know if you have any questions or feedback!

<comment><USER6> if you take a screen shot of all the items being scraped you could build a dataset for a pretty powerful AI. Something that takes an image of a webpage and out puts machine readable data. Not saying there's a NN that can do it right now but it seems like eventually it could get there.

<comment><USER6> That same dataset in reverse could be an interesting GAN too. takes useful data and outputs a webpage for it.

</comment></comment></comment><comment><USER7> Doesn't work at all with JS.

This is a big thing on many sites now.

Also, since that is the case, you could build this in a few hours using something like: [https://github.com/bda-research/node- crawler](https://github.com/bda-research/node-crawler). Yes, it would have no gui, so you lose that.

<comment><USER8> If JS a problem for you, try Kantu. It works with screenshots and uses OCR for scraping. The beauty is that it works with any kind of site. But clearly, the speed can not match a node.js or perl based scraper (mechanize etc), so it is not suitable for high volumes.

<comment><USER9> Do you find it better than Phantom?

Just reading about Kantu now. It reminds me of [http://www.sikuli.org/](http://www.sikuli.org/)

<comment><USER8> Yeah, the concept is the same as Sikuli, but all inside Chromium (and the OCR is better).

>Do you find it better than Phantom?

It depends. Once you have a working script, web scraping with Phantom is much faster and much more resource efficient. But since Kantu works visually, you do not have to touch any page source code. That makes it much easier/faster to create the automation in the first place, especially for complex sites with date controls, drag & drop and other Javascript.

</comment></comment></comment></comment><comment><USER10> By the way your Onboarding step-by-step wizard[1] is really awesome. I've used similar scripts on my sites before but they keep breaking because the users often click on some div or button (or due to mobile phones) not intended (they're only learning) and then wizard can't sync to the next step and the whole thing breaks :/

Is this happening on your site? If not, would appreciate some tips about coding it and how to handle exception cases where the wizard can't keep in sync or user click on unintended page elements.

[1] [http://i.imgur.com/aJzuvSD.jpg](http://i.imgur.com/aJzuvSD.jpg)

<comment><AUTHOR> Thanks! We used this awesome library called React-Joyride ([https://github.com/gilbarbara/react- joyride](https://github.com/gilbarbara/react-joyride)) which made setting up the product tour a breeze. Since our product tour is on a single-page app, it works quite well.

The most helpful part is that you can pass a callback which will trigger before/during/after each step, which can let you ensure that the state of the page matches what you're expecting. In our case, we use it to make sure that you're switched to the right tab, etc. Take a look! I highly recommend it.

</comment></comment><comment><USER11> This tool is really well thought-out and useful! I made a working API in less than 1 hr. This tool has a much better design & implementation than Kimono and easier than using Python 3 + Beautiful Soup 4 which is how I made my previous web scrapers. This tool also works for POSTing to web forms.

<comment><USER12> No offense, but your comment sounds like astroturfing (I'm not saying you are, just that it's part of a pattern I see).

I often see one or more commenters write what seems like an excessively positive thought dump on Show HNs. It just doesn't seem like the natural conversational tone everyone uses, but I can't quite put my finger on it.

Has anyone else noticed it? Is there a term for this sort of writing style?

<comment><USER11> It could be that I need to work on my writing skills. I'll admit, I'm an systems engineer not a writer. On the other hand, HN commenters tend to convey a healthy dose of cynicism and skepticism. Also it's known that negative comments come across as more trust-worthy than positive comments on the internet. I simply used this tool and it did what it said it did. I don't give a positive review unless I had a good experience. But it is easier for all of us to believe people with some degree of skepticism and cynicism.

</comment></comment></comment><comment><USER13> What if the content you want to scrape->API is behind a login gate? Is there an option of authentication?

<comment><AUTHOR> You can actually write an API endpoint that'll retrieve a state token (which includes the cookies). For one example, you can use view our Hacker News login endpoint at [https://wrapapi.com/#/view/phsource/hackernews/login/latest](https://wrapapi.com/#/view/phsource/hackernews/login/latest)

That endpoint will then emit a state token, which includes the session cookies. You can feed that state token into your next request and it'll authenticate you

</comment></comment><comment><USER14> This looks awesome. Thank you!

I wanted to give you a heads-up that the youtube video at the end of your joyride tutorial is broken.

It tries to play this: [https://www.youtube.com/watch?v=10yKzP3gtkc](https://www.youtube.com/watch?v=10yKzP3gtkc)

</comment><comment><USER15> "Price: Contact us"

Why?

<comment><USER16> Likely because they have custom pricing based loosely on how much business value they create for the customer. E.g. if a philatelist wanted to scrape stamp catalogs, and if an industry-specific analytics platform wanted to scrape a directory of prospects - you'd want two different prices. Otherwise, you'd either 1) leave stamp enthusiasts out in the rain, or 2) leave a whole lot of meat on the bone w/r/t enterprise pricing. There might also be a consulting upsell!

<comment><USER12> Eh, that seems like a non-problem. The solution to me is to leave stamp enthusiasts out in the rain. If your SaaS product can provide a lot of value in enterprise companies, $500 a month is not a lot to ask. And many people just want to see the price of a line item if it's a productized service so they can go back to someone higher with a purchase request.

When I was last working inside an organization and reviewing vendors for a product, it really left a bad taste in my mouth when they had "Ask for Pricing." I get it, my consulting work is basically Ask for Pricing, I understand the business strategy. But it's such a headache to sit through bullshit product demos for multiple vendors over a few weeks just to hear that their pricing structure is way out of line.

There is this idea that a lot of companies have, where they're more "professional" or conversion-optimized by removing public pricing and putting everyone through a sales funnel. But that concept only works if 1) you have a great product and 2) you have a great sales team, capable of making my time to failure in the conversion process _fast and painless._ Every company thinks they have this, but they almost never do. I really don't think you want to optimize your business for keeping stamp enthusiasts happy.

</comment></comment></comment><comment><USER17> The problem with opaque pricing is this: people don't want to start experimenting with something if it could be infinitely bad. i.e. if they can imagine the worst.

In the back of their heads, some people imagine the service is going to be huge, and then they worry that all the profits will be paid out to wrapapi.

Better to have a high headline number and then offer discounts for certain uses (non-profit, open source, students, etc). People are optimistic about how much money they might make so a high headline future price for when you graduate from the free tier is not necessarily bad.

</comment><comment><USER18> Good luck--- I built a service that did very 'light' scraping and it was forced to shut down. I imagine your days are numbered.

</comment><comment><USER8> Interesting... how does this compare to [https://a9t9.com/kantu/scraping](https://a9t9.com/kantu/scraping) ?

WrapApi seems to tackle the same task (web scraping) from a very different angle. I wonder if anyone has used both and can compare.

<comment><AUTHOR> WrapAPI is meant to not only do scraping (reading information), but also to (1) perform actions with side effects and (2) allow for complex chaining

Let's say you have a web-based inventory management system or CRM that requires a login, but you want to take data a customer has sent you in a spreadsheet and automatically batch enter it into the CRM, which doesn't have that functionality. You could then:

1\. Create an API endpoint that allows you to log into that system and return a state token

2\. Create a second API endpoint that's parametrized the inputs of the form to create a new inventory entry

3\. Chain those 2 API endpoints together so that the 2 actions are actually combined into one API call

Our focus is not only on getting data, but automating the many things that you or your company does with websites to save time

<comment><USER19> Man, what happened to Yahoo pipes? A tool that did all this so well.

</comment></comment></comment><comment><USER10> This is reallly neat. But I think you guys are losing a lot of potential customers by not having a clear cut pricing on you site.

I've used similar services like parsehub.com in the past and if they didn't have a pricing page I would have never tried it. Just my 2 cents.

</comment><comment><USER20> Im asking since the term API is mentioned. Is this designed for technical or non technical people? Im a non coder but really could do with the scraper so would this work for me?

<comment><AUTHOR> This is designed for at least semi-technical people, but it's really not that hard to give it a try for simple sites. Try watching the video, and shoot me an email at firstname.lastname@example.com if you run into any issues!

</comment></comment><comment><USER21> Glitchy on Chrome 57. When I load a page to build, I'm unable to scroll more than 1/4 of the page then it jumps back to the top.

<comment><AUTHOR> Let us know what page you're trying at email@example.com, and I'll take a look and fix it ASAP.

</comment></comment><comment><USER22> How does it do when websites doesn't have a good standard in their html?

You are using xpath here right?

</comment><comment><USER23> How does this compare to Kimono?

<comment><USER24> Kimono shut down on February 29th, 2016 and the cloud service has been discontinued. It only exists as a desktop app now.

Bought by Palantir, they retired in a good way, keeping people's data available for a moment and communicating well.

It was a great product still complicated to get a practical business model.

This WrapAPI v2 is an alternative I think, but I would use them with care as the economical model is unsure and it seems to be really new, still promising! :)

<comment><USER25> The desktop app + browser plugin still seem to work fine. I've run into a few things that don't quite work well, like pages that have a combination of click-to-paginate and auto-scroll-paginate, but in general, it's good.

</comment></comment></comment><comment><USER26> This is awesome. I'll give it a shot in my some of my next projects.

</comment><comment><USER27> Great! It really look like a nice portia fork

<comment><USER28> Any evidence that it is in fact a fork of portia?

[https://github.com/scrapinghub/portia](https://github.com/scrapinghub/portia)

</comment></comment><comment><USER29> The UI looks more like from import.io

</comment><comment><USER30> I've never had one of these work properly, better to build your own using some language and an html / text parser

</comment><comment><USER31> using the css selector can easily cause the page to be unresponsive.

<comment><USER32> Can you let us know which page and selector you're trying? I can debug it

<comment><USER33> Try typing in "span a" as a CSS selector for the HN homepage.

</comment></comment></comment><comment><USER34> Does this violate any current US law?

<comment><USER35> The software itself probably wouldn't, but the use of it for anything anyone cares about probably would. The CFAA, etc., make unwanted scraping illegal and this has been tested repeatedly in court.

The company that runs this software as a service needs to be very careful. 3Taps was similar and got destroyed for relaying data scraped from Craigslist.

Contacting the server after its operator has expressed its wish for you to stop is a violation of the CFAA (in that you are "exceeding authorized access" and/or gaining "unauthorized access" to a protected computer system). If it's found that the site's ToS is binding upon you, which it typically would be, you don't really even need separate notice to be held liable.

Storing a copy of a web page in RAM creates a copy that is eligible for copyright protection, and it is likely that any implied license to read that page will be invalidated by the access revocation.

IANAL.

<comment><USER36> Another court stated that copying data into a ram buffer for under 1.2 seconds was allowed. Depending on how they structure this it might be legally allowed.

[https://books.google.ca/books?id=a-yu2-JUQNAC&pg=PT249&lpg=P...](https://books.google.ca/books?id=a-yu2-JUQNAC&pg=PT249&lpg=PT249&dq=copyright+ram&source=bl&ots=5UVZjSNmlF&sig=DQ1k2TAEknpFp701zrq3PWkcChM&hl=en&sa=X&ved=0ahUKEwiQn_KJ2rbTAhXJxYMKHcZfCWo4ChDoAQhzMA0#v=onepage&q=copyright%20ram&f=false)

<comment><USER35> Your link doesn't work for me, but I was able to find the case you're referring to: [https://en.wikipedia.org/wiki/Cartoon_Network,_LP_v._CSC_Hol...](https://en.wikipedia.org/wiki/Cartoon_Network,_LP_v._CSC_Holdings,_Inc).

Thanks for that! Like I said, I'm not a lawyer and I'm sure there are other gaps in my case knowledge. It's certainly positive to see the Second Circuit recognizing that there is some need to consider the transient nature of RAM copies before ruling them infringing.

The ruling suggests that _MAI v. Peak_ did not address the transitory argument merely because it was not raised by the litigants, and that the precedent set there (which wouldn't have necessarily been binding anyway) is therefore not abrogated by ruling that some RAM copies are transient enough to fail to qualify.

Importantly, the durations listed here describe the runtime of the content, not the amount of time the data is held in the RAM. It is said that the system would buffer 0.1 seconds (100ms) of content at one point and 1.2 seconds of content at another point.

The Court does not seem to establish "1.2 seconds" as a general benchmark for RAM transience, but rather it suggests that transience should be considered on a case-by-case basis, per the language of the statute.

However, the general rule of thumb is that if a copy exists long enough to derive any value from it, it is non-transient. Guidance from the Copyright Office [0] reads:

>[...] _we believe that Congress intended the copyright owner's exclusive right to extend to all reproductions from which economic value can be derived. The economic value derived from a reproduction lies in the ability to copy, perceive or communicate it. Unless a reproduction manifests itself so fleetingly that it cannot be copied, perceived or communicated, the making of that copy should fall within the scope of the copyright owner's exclusive rights. The dividing line, then, can be drawn between reproductions that exist for a sufficient period of time to be capable of being "perceived, reproduced, or otherwise communicated" and those that do not. As a practical matter, as discussed above, this would cover the temporary copies that are made in RAM in the course of using works on computers and computer networks._

and scrapers have been held liable for copyright infringement via RAM copies on multiple occasions. Ticketmaster v. RMG states:

>[...] _copies of ticketmaster.com webpages automatically stored on a viewer 's computer are "copies" within the meaning of the Copyright Act._

despite the fact that they likely would've been held for a much shorter time than either 100ms or 1.2 seconds.

Notably, this was before the case referenced above, but it's typical of later cases, and it succinctly demonstrates that courts are likely to find RAM copies of an entire work (the web page) more likely to be of non-transitory nature than snippets of ~ 1/1500th of an entire work, regardless of how long they're stored in RAM.

[0; PDF] [https://www.copyright.gov/reports/studies/dmca/sec-104-repor...](https://www.copyright.gov/reports/studies/dmca/sec-104-report- vol-1.pdf)</comment></comment></comment></comment>


DHS Press Secretary on Recent Media Reports of Potential Supply Chain Compromise - <AUTHOR> https://www.dhs.gov/news/2018/10/06/statement-dhs-press-secretary-recent-media-reports-potential-supply-chain-compromise <comment><USER2> So basically Apple stated that they have not found anything and are not aware of FBI investigation and DHS confirmed Apple has not found anything and is not aware of FBI investigation. There is no statement that DHS has not found anything. The rest of the statement is water about DHS taking it's job seriously.

</comment><comment><USER3> > Information and communications technology supply chain security is core to > DHS's cybersecurity mission

How true is this? I know US-CERT is within DHS, but what else does DHS do in this area?

I did a bit of searching and found [https://fcw.com/articles/2018/02/14/dhs- supply-chain-securit...](https://fcw.com/articles/2018/02/14/dhs-supply-chain- security.aspx), which seems to imply that until 8 months ago, DHS wasn't doing much (or anything) in this area. If that's the case, I don't see how a statement from them regarding supply chain security can carry any weight. You don't go from nothing to being an expert in 8 months.

<comment><USER4> The DOD and the IC broadly have been very focused on Supply Chain Risk Management for a long time. Unfortunately the way the SCRM process works inside the govt is that it's legally focused and limited to primarily defense products, specifically things like hardware used in missiles, planes and equipment.

The major shift over the last decade or two to the commercial world being the source of a lot of risk vectors that impact the govt, means that govt capabilities to have oversight and control, or even warning, is severely limited. This case is a great example of that, as more and more threats to the govt are coming through commercial and personal devices.

Said another way, foreign adversaries don't need to target military equipment to have major capacity to spy on, or impact US government activities and policies. Private companies have to request support from DHS when there isn't a known risk to military supply chain. 99% of companies don't do this because 1. They don't want to, 2. The govt makes it hard to do and 3. It's not advertised well.

The US Govt is not structured to handle this at scale and there is no real solution without making a HUGE shift in private sector oversight that would be incredibly unconstitutional.

</comment></comment><comment><USER5> The Bloomberg report talked about how investigators tracked phone calls inside China, presumably by hacking and compromising Chinese telecom infrastructure. I don't see how, even if true, the US government would own up to something like that, esp. when it is accusing China of hacking. Imagine the headlines that would generate if the Chinese admitted to doing the same to the US (tapping US calls without a court order and with the potential power to shut down the infrastructure in time of conflict). It would be a bigger deal than planting chips on a few motherboards. The whole story smells of fog of war.

</comment><comment><USER6> What are people's thoughts on investing in supermicro. If this story turns out to be false are they undervalued at the moment?

<comment><USER7> Undervalued in general, stupidly undervalued after the drop in their stock last week. I bought a considerable chunk on Thursday @ 11/share.

<comment><USER8> Best of luck to you, but be careful, you may be left holding the bag of a soon-to-be bankrupt company. See my comment above, and take a look at their financials.

<comment><USER7> Not investing more than I can afford to loose.

</comment></comment></comment></comment><comment><USER9> In this day and age it's quite ironic for any country to say that they don't hack other countries. China will hack, Russia will hack, japan will hack and USA will definitely hack.

It's not just about control. It's about corporate advantage as well.

<comment><USER10> Hacking is one thing, your main outsourcing partner planting hardware backdoors by the millions is quite another.

These are companies that take your money and then hack you.

</comment></comment><comment><USER11> If a real supply chain attack was actually happening sponsored by a foreign government, the US would flag it top secret and never release the details. I find it highly incredulous for DHS, or any US government agency, to publicly denounce such attacks as a non-issue... If anything, the report by Bloomberg is confirming what alot of people already suspected would happen or has already happened.

<comment><USER12> Why would they do that? Surely it's to their advantage to actually tell the targets of the supply chain attack about it?

What are you basing this on other than speculation?

</comment></comment><comment><USER13> Suppose somebody had access to a potentially compromised motherboard exhibiting strange behavior on the network.

How would one go about analyzing it?

Who would be on the so-called dream team?

Asking for a friend.

<comment><USER11> If any box on your network is establishing outbound connetions to machines in china, that would be suspect... Firewalls and IDS at least detect/block this activity.

<comment><USER14> I feel like if you had the resources to implement something like this, you would also have the resources to mask where you are phoning home to.

</comment></comment></comment><comment><USER15> Not taking a side, what the heck is the chip in the photos if the story is inaccurate?

<comment><USER14> It's not a micro, but there are microcontrollers that are comparable in size. An AVR ATtiny20 is available in a 1.5mm x 1.4mm package. That's just about a 2mm^2 footprint, it's totally insane.

<comment><USER16> And not just itty ATtinys, for example MAX32660 is full fat ARM M4F core in 1.6x1.6 mm package. It is the sort of thing you could hide pretty much anywhere.

For reference here is a picture of similar package (called wlcsp or variation of thereof): [https://img.youtube.com/vi/edERx4x5eY0/maxresdefault.jpg](https://img.youtube.com/vi/edERx4x5eY0/maxresdefault.jpg)

</comment></comment></comment><comment><USER17> So, both the British and US governments are on the record confirming Apple and Amazon's statements. The next step should be Bloomberg's internal investigation so they can figure out how that story got published without any corroborating evidence. Supermicro's stock took a beating and now they will have a legal case against Bloomberg.

<comment><USER18> But it is still possible that DHS is just not aware of CIA/NSA discoveries and activities.

There were suspicious events that signal that something is up, like when Apple completely switched from Supermicro to other vendors or when they started to develop processes to prevent supply chain hardware attack around time when CIA supposedly found the bug (2015-2016).

iPhone is also switched from Qualcomm modem to US designed and fabricated by Intel.

<comment><USER19> > iPhone is [sic] also switched from Qualcomm modem to US designed and > fabricated by Intel.

Qualcomm is based in San Diego, CA.

<comment><USER18> Supermicro is based in San Jose, CA . Qualcomm is fabless company, manufacturing chips among others in Taiwan.

</comment></comment></comment></comment><comment><USER20> > "... [we] are committed to the security and integrity of the technology on > which Americans and others around the world increasingly rely."

Snowden showed us otherwise.</comment>


Do Not Feed the Climate Trolls - <AUTHOR> https://www.sciencealert.com/do-not-feed-the-climate-trolls <comment><USER2> A crucial part of "science" is peer review. If a "troll" disputes some key data sources or facts, should we banish and censor the troll, or should we respond with a well-cited set of hard facts? Why is Climate Science such a cesspool? Both sides are guilty of gross misrepresentation. My conclusion is that Climate Science is not "science" at all, but firmly rooted in politics.

<comment><USER3> People are allowed to have their own communities. If a persons comments, only to get a enrage and entice a negative response then they are a troll. They should be shown the door [https://xkcd.com/1357/](https://xkcd.com/1357/)

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


(Now More Than Ever) You Might Not Need JQuery - <AUTHOR> https://css-tricks.com/now-ever-might-not-need-jquery/ <comment><USER2> Yeah but JQuery is the tool I know. It's the tool most dev's working in the same team as me know. Consistency makes working in a team so much easier. Is there a compelling enough reason for me to give up consistency and drop JQuery?

<comment><USER3> From what I gather from the few examples in the post, is that JavaScript has incorporated a lot of the ideas in JQuery, thus making JQuery itself a tad redundant.

As for a "compelling enough reason", I don't know about you, but for me, "staying current" is _the_ single most important aspect of my job as a web developer. If I'm not keeping up, I'm falling behind.

The last sentence of the article sums that idea up pretty well:

"... jQuery will increasingly be seen as a bygone relic from the DOM's dirty past."

Also, giving up JQuery doesn't necessarily mean that you also have to give up consistency. You and your teammates just get to decide on what the "new consistency" will be. It might even be fun?

<comment><USER4> I agree on the consistency part. Even if you need several (max 4?) other libraries to do stuff like AJAX and Promises, it would still be consistent. If you want and need, you can always add a small wrapper around those libraries and add consistency to the API calls.

 _Staying current_ is, in my situation, a luxury I can't afford. We have a web project using third party libraries and UI Frameworks which depend on JQuery. As the project is complex and already has a lot of code, kicking JQuery out is not an option (or, at least, neither trivial, nor quick). I'm sure this happens often with legacy software.

</comment></comment></comment><comment><USER5> I can vouch for BlissJS. Done everything I needed in my most recent project.</comment>


Whuffie – how to build a reputation currency in Ethereum? (2014) - <AUTHOR> https://forum.ethereum.org/discussion/462/whuffie-how-to-build-a-reputation-currency-in-ethereum <comment><USER2> Hmmm...

> I need to confess something: ''Whuffie'' would make a terrible currency.

[http://www.locusmag.com/Perspectives/2016/03/cory- doctorow-w...](http://www.locusmag.com/Perspectives/2016/03/cory-doctorow- wealth-inequality-is-even-worse-in-reputation-economies/)

</comment><comment> dane-pgp A lot of the problems with decentralised reputation systems (or indeed decentralised anything systems) stem from the difficulty of establishing a decentralised identity system.

I wish that the idea of "idchains" had been explored more, but it seems it didn't get much further than a (now unlisted) video on the inventor's YouTube channel:

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

The (perhaps controversial) idea is that you accept that your face is public data, and so use that as sort of the unique key in a global database of faces, or ideally, hashes of faces. A user could then carry around a digital copy of their face picture (in a mobile app, say), which other users could attest and check the hash of in a global blockchain.

There would need to be gamified incentives to do this attestation (effectively key-signing parties for non-geeks), and you could opt to have people take pictures of you each time and upload them to a decentralised file store (like IPFS). Organisations could then compete on using machine learning to generate confidence scores that a given identity really had been in use for a significant duration, vouched for by other individuals, and not a duplicate of another account somewhere else in the system.

There are various trade-offs in terms of security and usability and anonymity, but it seems like an idea that is worth exploring.

<comment><AUTHOR> people's faces change with some regularity. Also there are people who are incapable of recognizing faces, or just especially bad at it, so the method is unfair to them.

<comment><USER3> What about using some kind of DNA hash?

<comment> dane-pgp If sequencing a DNA sample became as cheap and common as taking a selfie, then I could see that happening, yes. I also think that would be a very strange world to live in, but recent events have shown that strange worlds are hard to rule out.

</comment></comment></comment></comment><comment><USER4> I am working on p2p reputation network in Ethereum. [https://github.com/kwikiel/p2p-trust- network](https://github.com/kwikiel/p2p-trust-network)

Often it's useful to be able to trust an online identity, i.e. for peer-to- peer lending sites, peer-to-peer home exchange sites, work assignments, etc.

Most often the various platforms (like Couchsurfing, Uber, BeWelcome, Loanbase, Localbitcoins etc) will have some built-in support for ratings; user account A can leaving positive feedback for B after A and B has had an interaction on that platform. The ratings never leave the platform. There are usually no ways to see the difference between a conman creating yet another fake account and a newcomer to the platform. It is impossible for an outsider that have been scammed on one platform to leave a negative feedback warning users on another platform about the scammer.

What we need is a global network-of-trust system. It should be truly peer-to- peer, it should be based on open standards and open source. Just the risk of getting negative feedback on such a network could be enough deterrent to avoid certain types of scam.

<comment><USER5> I had a similar idea a few years ago but decided to make it wholly objective. Basically, individual actors could publish cryptographic proof that they had engaged in a certain transaction with a certain party and reached a certain outcome, without necessarily disclosing the full details of the transaction. This information could then be analyzed and collected by those considering entering in to a transaction with that party, or perhaps paid agencies who acted as caches to do this for the general public. Quite a lot of related thoughts at [http://ifex-project.org/](http://ifex-project.org/)

</comment></comment><comment><USER6> I particularly like this insightful comment:

> Reputation is always relative to a particular group; I doubt there could be > an "absolute" measure of reputation.

<comment><USER7> IIRC, Down&Out addressed this. When you looked at another person's Whuffie, it consisted of 4 parts:

      * +Whuffie from users you +Whuffie
      * -Whuffie from users you +Whuffie
      * +Whuffie from users you -Whuffie
      * -Whuffie from users you -Whuffie</comment></comment>


Financial Times bot warns if articles quote too many men - <AUTHOR> https://www.theguardian.com/media/2018/nov/14/financial-times-tool-warns-if-articles-quote-too-many-men <comment><USER2> Define "too many." Is a work not valid if there isn't enough diversity in it's sources?

</comment><comment><USER3> Are they assuming gender in the name of the person?

<comment><USER4> From the article: "a bot that uses pronouns and analysis of first names to determine whether a source is male or a female". Probably not perfect, but good enough for a suggestion/reminder engine.

</comment></comment><comment><USER5> > _The media organisation found that only 21% of people quoted in the FT were > women, prompting the development of a bot that uses pronouns and analysis of > first names to determine whether a source is male or a female._

Sounds like substantial underrepresentation for an industry in which management and professional workers are 47% women [0]...

> _The paper, which covers many male-dominated industries, is keen to attract > more women readers, with its research suggesting they are put off by > articles that rely heavily on quotes from men._

...and a strong business case for the FT to address it. Aside from the fact that this is HN, I'm not sure why all of the top-level comments so far are so critical.

[0] [https://hbr.org/2016/10/why-women-arent-making-it-to-the- top...](https://hbr.org/2016/10/why-women-arent-making-it-to-the-top-of- financial-services-firms)

</comment><comment><USER6> Eye roll

</comment><comment><USER7> I guess that's one way of approaching this problem of parochial viewpoints. Hope this doesn't have any unintended consequences.</comment>


Ask HN: What benefits does the blockchain provide? - <AUTHOR> I've heard many people stating blockchain will become ubiquitous over the next few years, but I'm not entirely sure what benefits it provides.
The internet obviously provided companies a way to reach and connect with millions of people from all over the world. AI allows companies to use machines to do tasks once only humans could do. Cloud computing frees companies from the hassle of maintaining physical hardware.
But what does the blockchain offer me if it's really on par with these other innovations? <comment><USER2> The blockchain's (current) prime use case: triple entry accounting. In double entry accounting, a ledger only contains debits and credits. With the blockchain, the blockchain's attestation of the validity of the debit and credits is the third entry. This removes the need to trust whether the credits and debits were correct in the first place. Were financial systems to be based on blockchain design, an Enron situation would not be able to occur. It might even prevent the likes of Madoff. This technology is only getting started. While there is hype, this hype is necessary for the market to test out many ideas and applications, until those that make sense remain standing.

<comment><USER3> Uh, no. Enron's debits and credits always added up. It was what they claimed as credits that was the problem.

<comment><USER2> It's not the only the correctness of the debits and credits that is possible, but also determining their nature. Of course these implementations would have to be molded to fit for each use case. The technology is nascent.

<comment><USER3> Yea, the hard part is when it comes to determining the value of the collateral for some obscure project in rural Africa, vouched for by the trader who sold the trade and signed for by somebody 10,000 miles away who might be the traders pal.

<comment><USER4> Yes, OP seems to think the blockchain somehow solves the (extremely subjective) issue of _valuation_ , as opposed to simply "did this transaction occur between counterparties?

</comment></comment></comment></comment></comment><comment><USER5> It tackles the issue of "trust".

All of us at many points in our lives have to trust people or companies that we can't (and should't) trust, for example we give credit card numbers to some random websites on the web.

In theory, blockchains are supposed to get rid of that need, because instead of a single entity owning everything, everything is decentralized.

This means people don't have to put trust on entities they shouldn't have to trust. This will probably get rid of a lot of inefficiencies in the world.

<comment><USER6> How does it actually tackle the practical issue of trust, though? If I buy something in a block chain based currency and I don't get it, doesn't that mean I'm just SOL? On the other hand, with a credit card I can just do a chargeback.

<comment><USER7> Blockchain based currencies like Bitcoin protect you from your bank freezing or stealing your assets, or suddenly refusing to do business with you.

They don't protect you from a third party not shipping your products that you bought on eBay.

If you have ever dealt with companies like PayPal as a merchant, you know why this is important.

<comment><USER6> Just to clarify - as a consumer I lose utility when using crypto compared to the current status-quo?

<comment><USER7> I don't know of any cryptocurrencies that allow you do to do a chargeback, so in that specific dimension, yes.

</comment></comment></comment></comment></comment><comment><USER8> It's just a database, but it's distributed, with integrity maintained through public keys

Coins, inventory, cars, loans, art, crypto kitties, sensor logs, records.. anything you'd put in a database, you could instead put into the distributed ledger and forget about it (at a price, the amount of data has to be very small but you can also buy hosting separately). Others can then have assurances about the integrity of that ledger without having to trust you either

The cherry on top is being able to write transform functions (ie programs) that all of the nodes simultaneously run so the ledger state can intelligently change based on conditions

<comment><AUTHOR> Thanks, but what you're describing is already possible with traditional technologies.

What specific advantage does the blockchain provide here, given decentralisation is less efficient than the centralised cloud solutions already available from providers like AWS?

<comment><USER9> Assuming you mean public blockchains, the main advantage is censorship resistance (you cannot have an administrator delete entries or restrict access).

<comment><AUTHOR> But where is this useful? I can already set up databases with restricted access to certain users.

In what situations am I going to want to create a database in which not even I under any circumstances can delete things or change access rights?

<comment><USER10> You are thinking of operations within a centrally controlled, trusted entity. This is useful for things that happen between entities that don't necessarily trust each other and don't have control of each other's data. Data interoperability, dealing with sketchy vendors, and chain of ownership through many companies, nations, or even departments within large organizations are huge problems that an insane amount of money is thrown at. There is a lot of value in a database of facts that no-one controls and everyone can trust.

</comment></comment></comment></comment></comment><comment><USER11> The function of the blockchain is to suck in and burn the general public to such an extent that there will be universal support to kill any future decentralised monetary system.

Does anyone think that those that have control of the current money supply (well at least those that advise them) are going to give away this power to a bunch of nerdy anarchists with a cool idea?

</comment><comment><AUTHOR> I want to give a little context to why am asking this question...

Recently I've been seeing a number of really smart people and established companies claiming blockchain is going to be ubiquitous and revolutionise a large number of different industries. However, outside the case of cryptocurrencies I'm not sure what applications the blockchain has or why myself as a developer would want to start using this revolutionary technology.

I understand why in the example of cryptocurrency the blockchain is used. However why companies like Facebook or Microsoft would want to use blockchains for things is beyond me. It also confuses me why if the blockchain is as revolutionary as people say that it's only just started to get attention. Bitcoin has been around for quite a while, and has been well known in tech circles for a long time now.

If my comments here seem critical it's not because I have any opposition to using the blockchain, but simply that I'm confused and desperately trying to understand what I'm missing here. I genuinely don't understand why or how this technology is going to become ubiquitous or revolutionise much of anything - which concerns me given the track record of some of its advocates.

<comment><USER10> Supply chain logistics and proof of ownership is a non-currency use case of blockchain technology.

<comment><USER12> Hey @thomasrognon, you've mentioned this twice on this thread from what I can see - care to elaborate?

</comment></comment></comment><comment><USER13> For the sake of the intriguing argument I'd go with Scott Adams' AI / singularity idea:

[http://blog.dilbert.com/2014/04/09/how-the-robots-will- take-...](http://blog.dilbert.com/2014/04/09/how-the-robots-will-take-over/)

Basically, according to that argument Bitcoin and blockchains are an AI- conceived ploy to stabilise markets and eliminate irrational human behaviour from the equation.

</comment><comment><USER14> This article describes the parameter space of blockchain applications, calling out when a blockchain is useful and when it is pointless. As such it can help organize and compare the statements in a discussion like this.

[https://medium.com/tezos/a-functional-nomenclature-of- crypto...](https://medium.com/tezos/a-functional-nomenclature-of- cryptographic-ledgers-e836cb0e6864)

</comment><comment><USER15> In practice it seems mostly just good for cryptocurrencies and equity like cryptos and for exchanging those outside government control. But that in itself could be a big deal - the financial, forex, stock and bond markets and money exchanges are a big part of the global economy and if those move to crypto that's a big change.

Outside government control is a mixed blessing - less bureaucratic but more prone to tax evasion, drug dealing and investment scams.

</comment><comment><USER16> Personally when I hear blockchain I think _payments_. If we can bypass the banks and the credit card companies and create a payments system that is based on the power of the internet with blockchain as the intermediary, then we have something extremely powerful.

We have to remember that the banks and the credit card companies will prevent this from happening with all their resources...

</comment><comment><USER17> Watch this video. [https://www.youtube.com/watch?v=k53LUZxUF50](https://www.youtube.com/watch?v=k53LUZxUF50)

It does a good job of explaining how trust evolved in the world and now that we are comfortable using computers to organize our lives, it makes sense to have a global ledger to keep track of "karma" we owe each other.

</comment><comment><USER18> Blockchain's potential goes far beyond currency and investing. At it's core it's a way to protect and validate information in a decentralized way. That can be used for ANY information.

In theory a blockchain could serve as the source of truth for birth records, health records, property records, favorite cat videos, etc... The possibilities are endless

</comment><comment><USER19> The benefit of blockchain is distributed consensus about a database.

When compared to a central regular database, blockchain is a compromise you make so that you can have distributed consensus over the state of the database. Apart from that it doesn't give you magical new benefits.

</comment><comment><USER20> I was wondering today if it would enable new and exciting forms of MLM (Amway, Nutrisystem, P90X, etc.) as the downline can be encoded directly.

</comment><comment><USER21> Getting rid of parasitic middlemen

</comment><comment><USER22> Do you want the cynical answer or the idealist answer?

The cynical answer is that banking institutions and oligarchs are adopting cryptocurrencies because with the various recent leaks and the (long overdue) political willpower in the West to do something about tax evasion, they need something more reliable than physical tax havens.

One of the reasons why I suspect the current BTC rate is not just a bubble is that it matched the recent crackdown on corruption in Saudi Arabia. Hundreds of _billions_ of dollars are at risk of being lost. We have seen similar hikes after Cyprus banking fiasco and, IIRC, after a round of Russian sanctions. Still, when even my step-mom considers investing in BTC, there is clearly a speculation bubble going on over this, but I doubt the crash would bring it to pre-december levels.

The idealist answer is that blockchains allow to secure transactions that would normally require a trustable third party. If you want to run a virtual currency you normally need a database somewhere that says "Bob owns 176 dogecoin, Amanda owns 9871 dogecoins". The owner of that database can theoretically suddenly remove or add amounts on accounts in the database without anyone else's authorization. On the blockchain, the database is shared by thousands (millions now I guess?) of nodes constantly checking each other. To make a fraudulent modification and get away with it you need to own 2/3 of the network.

Currencies were the first things implemented but now some smart contracts have been added: contracts that are programmatically defined and that the blockchain will ensure execute if some specific conditions are met. E.g: "If the account #25676 contains more than 10 BTC at the first day of a month, split its amount between these two different accounts". This gave rise to the possibility to create enforceable shareholder contracts without having to trust a legal system.

The idealists who put that in place are called cryptoanarchists. (Warning: Bias ahead) simply put, these are people who think that big institution will always fail. That corruptable systems will be corrupted and that the people creating crucial infrastructure today are so flawed that the general demise is inevitable. They see a big value in the fact that we don't need to trust an entity to do transaction. I used to think that way too.

However, fact is that entities whose business is to be trustworthy tend to do a good job 99.99% of the time. The 0.01% of the time is when you are called Wikileaks or Khodorkovsky. If you are, then you put a lot of value in the lack of third parties, but if you are part of the 99.99% you probably don't.

I still like the fact that blockchains are creating competition for other institutions. The speed and low price of transactions (well, now it is getting higher in BTC, hopefully this will be solved) puts the big institutions to shame. Recently a 10 minutes SEPA transfer initiative was started, probably because of this. It is the main transfer system in Europe and it would typically take several days to process.

The fact that companies could exist solely on blockchains and be created in a matter of minutes will hopefully put a similar pressure on administrations.

<comment><AUTHOR> Thanks. I understand why they're a great solution in the domain of cryptocurrencies, but I'm not sure how they will be used by a lot of the companies looking into them now like Facebook? I'm asking more for the general usecase of blockchains. Specifically, in what situations would I want to use a blockchain?

You seem to be saying that you believe it has the potential to revolutionise a few things in the world of finance, which I would agree with. How much it will change those industries in reality though I'm a little more sceptical about.

<comment><USER22> The disruptive quality companies like in blockchain technology is its ability to ignore local legislations.

Facebook is not allowed to issue dollars but may issue likecoins, warn that US residents are not allowed to sell them for dollars and get away with it.

</comment></comment></comment><comment><USER23> Consensus.</comment>


Pymux: a tmux clone in pure Python - <AUTHOR> https://github.com/jonathanslenders/pymux <comment><USER2> I'm all for experimenting with new ideas, however this seems to duplicate all the conceptual shortcomings I see in tmux.

First of all, session support and terminal multiplexing are two distinct features which shouldn't be intermingled. What ever happened to the Unix principle of doing one thing and doing it well? My take on this problem is a combination of abduco[1] and dvtm[2].

Next a built in copy mode seems wrong, there is no need to implement vi(m) or emacs key bindings when you can make use of the complete editor. That is why dvtm uses my vim clone vis[3] as a filter: the terminal (scroll back) content is piped to $EDITOR and whatever the editor writes to stdout is kept in a register to be pasted in other terminal windows.

Furthermore I think the completion menu should also be implemented as a standalone tool (using e.g. dmenu or slmenu) as is done for the vis file open dialog.

As a last point I consider Pyhton not really suitable for core system tools, if you want something more expressible than C then something like Rust would probably have been a better choice.

[1] [https://github.com/martanne/abduco](https://github.com/martanne/abduco) [2] [https://github.com/martanne/dvtm](https://github.com/martanne/dvtm) [3] [https://github.com/martanne/vis](https://github.com/martanne/vis)

<comment><USER3> >What ever happened to the Unix principle of doing one thing and doing it well?

Rob Pike has the answer for you. [http://interviews.slashdot.org/story/04/10/18/1153211/rob- pi...](http://interviews.slashdot.org/story/04/10/18/1153211/rob-pike- responds)

A Slashdot user named sczimme asked Pike this question: Given the nature of current operating systems and applications, do you think the idea of "one tool doing one job well" has been abandoned? If so, do you think a return to this model would help bring some innovation back to software development?

Rob Pike's reply was: Those days are dead and gone and the eulogy was delivered by Perl.

<comment><USER4> I think there is still some nuance available.

Perl is great for succinct syntax, which is something I admire (who doesn't appreciate backtick for invoking another program?)

This same brevity is valuable in other contexts, but the challenge is in doing it and understanding the implications. So long as such mechanisms don't introduce hidden complexity (e.g. ';' in bash or it's equivalent), succint syntax has my vote. Working in C at a low level and still having to deal with integer overflow shows me that there is definately a middle ground w.r.t. expressivity and details. I'd be happy to see progress in this area.

</comment></comment></comment><comment><USER5> (author). This is the first release of Pymux. It should be stable and usable for daily work. However, don't hesitate to create a GitHub issue in case you feel that it lacks some features/responsitivity or when you'd like to see something different. Expect to see more progress in the coming months. Jonathan

<comment><USER6> Three things I care about are byobu, mouse support and tabs.

Being able to make byobu use this instead would make adoption really easy. Hopefully just documentation and changing one byobu setting for a different binary name somewhere.

Tmux has mouse support but it seems to require config settings (ie doesn't happen by default). I'd rather mouse stuff just works out of the box with no configuration and does the right thing.

I like tabs in the terminal (eg Gnome-Terminal on Linux). I believe there is a Mac term emulator that can map the different screens to tabs. Byobu does help a lot with this, but it would be nice if the terminal can do so too.

Thanks for allowing different viewers to see different screens at the same time. tmux's behaviour of making every viewer see the same one at the same time is highly annoying. (Yes I know there are ponderous workarounds, but seriously?)

<comment><USER7> +1 for out-of-box mouse event support. This would be the killer feature for me.

Right now, configuring pass-through mouse events in Tmux on a Mac is a huge production. StackOverflow has conflicting advice for each permutation of OSX version + Tmux version, and a lot of stuff changed in the last couple versions of each, such that old advice is entirely useless.

</comment></comment></comment><comment><USER8> There are way too many negative remarks about this project. It took a lot of effort to share this project with the world. Presenting alternatives projects and arguments against pymux is a direct assault on everything good about open source, python, and our hacker news community.

<comment><USER9> Presenting alternatives is a pretty open source idea, no? Thats exactly what this project is doing for tmux! Its not an attack but a discussion point.

</comment></comment><comment><USER10> Does it or will it support 24bit / True Color terminals?

This is the only feature I miss with Tmux since I've been using Neovim with 24bit colors for a while.

<comment><USER5> Yes, it does support true color. It's disabled by default, because not all terminals support it, but if you want 24bit, do:

pymux --truecolor

<comment><USER11> Thanks, added in my summary gist [https://gist.github.com/XVilka/8346728#terminal- multiplexers](https://gist.github.com/XVilka/8346728#terminal-multiplexers)

</comment></comment></comment><comment><USER12> What for? What benefits does the use of Python confer in this case?

<comment><USER13> README.md is a good place to check:

Compared to tmux

To some extend, pymux is a clone of tmux. This means that all the default shortcuts are the same; the commands are the same or very similar, and even a simple configuration file could be the same. (There are some small incompatibilities.) However, we definitely don't intend to create a fully compatible clone. Right now, only a subset of the command options that tmux provides are supported.

Pymux implements a few improvements over tmux:

There is a completion menu for the command line. (At the bottom of the screen.) The command line has fish-style suggestions. Both Emacs and Vi key bindings for the command line and copy buffer are well developed, thanks to all the effort we have put earlier in prompt_toolkit. Search in the copy buffer is highlighted while searching. Every pane has its own titlebar. When several clients are attached to the same session, each client can watch a different window. When clients are watching different windows, every client uses the full terminal size. Support for 24bit true color. (Disabled by default: not all terminals support it. Use the --truecolor option at startup or during attach in order to enable it.) About the performance:

Tmux is written in C, which is obviously faster than Python. This is noticeable when applications generate a lot of output. Where tmux is able to give fast real-time output for, for instance find / or yes, pymux will process the output slightly slower, and in this case render the output only a few times per second to the terminal. Usually, this should not be an issue. If it is, Pypy should provide a significant speedup. The big advantage of using Python and prompt_toolkit is that the implementation of new features becomes very easy.

<comment><USER12> That doesn't answer the question though. Why not just add all (or some) of the aforementioned stuff to tmux? Tmux is an established, widely used piece of software. Any improvements would be much more appreciated there.

<comment><USER14> You could say the same about screen vs tmux (or endless other software clones). Projects like these help drive innovation on both sides. Competition, if you like.

Besides, Pymux is Python while tmux is C. I'm sure you can appreciate that adding a Python API to tmux would be non-trivial, both code-wise and politically.

<comment><USER15> But what's the innovation? Adding the python API?

<comment><USER16> Not everything has to innovate. I understand it would be more useful to you and I if it did innovate, but there isn't some prereq for posting to hacker news that your project has to be innovative.

I personally find this project interesting to see, although I won't be using it.

<comment><USER15> The comment I was replying to specifically mentioned it.

<comment><USER17> Spend the 30 seconds required to read the ancestor comment explaining what it has enabled WRT prompt toolkit.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER18> Can you save an environment like with [https://github.com/tmux-plugins/tmux- resurrect](https://github.com/tmux-plugins/tmux-resurrect) ?</comment>


Adobe CTO Kevin Lynch: We're going to make the best tools in the world for HTML5 - <AUTHOR> http://techcrunch.com/2010/05/05/adobe-cto-kevin-lynch-were-going-to-make-the-best-tools-in-the-world-for-html5/

<comment><USER2> > We're going to make great tooling for HTML5. We're going to make the best > tools in the world for HTML 5.

This is a good news. No shipping day: not really a good news, if we are lucky we'll see it with CS7

> We're focusing on everybody else. There's a huge wave of innovation, there's > going to be a wide range of devices.

I think it would be fair to say that smartphones have been around for at least 5 years. I can't recall to see a huge wave of phones using Flash in a decent way

> Regarding the prototype tablet that has been shown off at Web 2.0, there are > a bunch of manufacturers building devices with those guts.

Prototype =! successful product. We'll revisit this statement when those manufactures will ship a million of those devices in 28 days.

</comment><comment><USER3> Quote:

 _It's not about HTML 5 vs Flash. They're mutually beneficial. The more important question is the freedom of choice on the web..._

 _Look at the iPhone helicopter we just saw — why should I only be able to use an iPhone for that? Why can't you do that with any phone? If you look at what's going on now, it's like railroads in the 1800′s. People were using different gauged rails. Your cars would literally not run on those rails. That's counter to the web. The 'rails' now are companies forcing people to write for a particular OS, which has a high cost to switch._

Translation:

 _We will lower the cost to switch phones by moving the switching cost out of the hardware and into the tooling. Then we will benefit because you will need to buy our tools to write applications and you won't be able to switch tools._

Adobe _will_ make all the tracks the same gauge, but you won't be able to manufacture a locomotive without their tools.

p.s. I upmodded this post because it's important to hear what they have to say, not because I support what they're saying.

<comment><USER4> Funny, because you're able to create SWF content using only free, open source software, including their own compiler. I don't believe your point holds. Do you ever do any Flash work?

<comment><USER3> The same could be said of the CLR, and there have been efforts like Mono to replicate it independently of Microsoft. Nevertheless, in practice Microsoft control the .NET platform and the CLR. Like any other platform, they can control what underlying features of the OS or hardware it does or doesn't support, and they can give their tooling an advantage over free, open source tooling.

For example, what if they add a new set of op codes to the next release? Don't their tools arrive in the marketplace with full support of the new op codes while the free, open source tools must toil away to replicate them?

We can quibble about how much advantage their tools have in the marketplace, but unlike the late Sun Microsystems they are very clear about being in the business of making money from tools and commoditizing operating systems, browsers, and hardware to support that business model.

<comment><USER5> Except Microsoft doesn't provide fully functional implementations of the CLR for a reasonable set of platforms. Microsoft intentionally crippled the CLR on non-Windows OSes, and continues to do so.

<comment><USER6> > Microsoft intentionally crippled the CLR on non-Windows OSes, and continues > to do so.

Citation needed. I'm a heavy .NET user on both MS.NET and Mono, and I've never seen this crippling you speak of.

<comment><USER5> I guess I lump .NET together with Silverlight, and the software I have to use for work is currently unusable on Moonlight.

</comment></comment></comment></comment></comment></comment><comment><USER7> _But look at the iPhone helicopter we just saw — why should I only be able to use an iPhone for that? Why can't you do that with any phone? If you look at what's going on now, it's like railroads in the 1800′s. People were using different gauged rails. Your cars would literally not run on those rails. That's counter to the web. The 'rails' now are companies forcing people to write for a particular OS, which has a high cost to switch._

What a silly argument.

But look at the Quickbooks app we just saw. Why should I only be able to use Windows for that? Why can't you do that with any OS? If you look at what's going on now, it's like railroads in the 1800′s. People were using different gauged rails. Your cars would literally not run on those rails. That's counter to personal computing. The 'rails' now are companies forcing people to write for a particular OS, which has a high cost to switch.

(Footnote: QB for Mac is not the same product or feature set.)

But look at the SUV we just saw. Why should I only be able to use gasoline for that? Why can't you run that with any fuel? If you look at what's going on now, it's like railroads in the 1800′s. People were using different gauged rails. Your cars would literally not run on those rails. That's counter to the open road. The 'rails' now are companies forcing car buyers to buy SUVs for a particular fuel, which has a high cost to switch.

Etc.

This is the sort of thing markets decide.

</comment><comment><USER8> Adobe needs to get over their "We will ship when its done" way of doing things. They have a ~18 months - 24 month cycle to refresh products. I think in todays day and age thats too long. Adobe tools do not currently fit in well with either RoR, Django or jquery.

</comment><comment><USER9> They should start by making the best tools in the world for Flash development! I personally use HaXe, it's significantly better than Flex, which is kind of sickening because it's mainly written by one guy.

</comment><comment><USER10> I have been saying this since the first proclamation that HTML5 will kill Flash. It will not kill Flash CS it will kill the Flash Player. Artist and designers still need a tool to build content, Flash CS will continue to be that tool.

<comment><USER4> Really?

<http://www.craftymind.com/guimark2/>

So less features, slower adoption, and worse performance will kill the Flash Player. Interesting.

</comment></comment><comment><USER11> So has Adobe just basically said: "Hey Steve Job's is right to not put Flash on the iPad, the real solution for Adobe is to move into the future, its just that we are lazy and greedy so we didn't want to do this, but Steve is forcing us to be a better company!"

<comment><USER4> No. They're saying there's a bunch of inane people who think Adobe is against HTML5 and that HTML5 is the death of Flash, while it isn't.

<comment><USER11> good counter point

</comment></comment></comment><comment><USER12> That is pretty good news.

</comment><comment><USER13> Any seasoned Adobe user will know that when Adobe says "we'll make" they mean "in the next 5 years" and "the best" they mean "moderately decent, will still crash a lot, also be frustratingly inconsistent".

<comment><USER14> Or it means "we'll acquire" ... like they did with Flash and other stuff</comment></comment>


EtherPad: Real-time Editing with JavaScript - <AUTHOR> http://ejohn.org/blog/etherpad-real-time-editing-with-javascript/

<comment><USER2> I worked with these guys for a very short time, collaborating on EtherPad, and they are seriously some very smart people.

This technology rocks, and I'm glad they did such a good job of solving this problem like nobody ever has before.

</comment><comment><USER3> I have a friend who has always been a fan of SubEthaEdit, I like the idea but not the implementation. Is there a similar plugin available for emacs?

Normally when I'm actively editting code that two people are sharing remotely, we just commit/update a lot. It tends to run up the revision numbers, but I can't think of a better way. Any ideas?

</comment><comment><USER4> netbeans has real time code editing technology built in over XMPP.

but this kind of easy access editing would be very nice to have in a intranet- hostable form, i'm guessing there are no open source products out there for this, anyone know?</comment>


To YC or not to YC, that is the question. - <AUTHOR>

Hello guys, Well, i have been working on my startup since last august, taking everything into consideration it has been going as planned. except the plan it self
We started with 30K dollars and it has ballooned to 150K.. all that aside here is the million dollar question.
The site will launch soon, money is sadly an issue but so far hasn't been a really big one yet, some people took a dive with me unexpectedly and i owe them lots of money, they truly believe in the idea so they feel they will get paid back *mind you, they are NOT VCs. I have always liked YC and the little money they fund companies with obviously wasn't what made me like them, every YC company I have seen gets tons of attention from the media and god knows how much that is worth. So, should I approach them, do they have different approaches to funding, because I frankly don't want their 2K that they give you, i just want their experience in this whole startup scene. I wounder if they would meet you to analyze the situation and maybe go from there? thanks <comment><USER2> Not sure if you know, but they have 2 funding cycles every year. One during the summer, and the other during the winter, I believe. The application window for the last cycle closed a few weeks ago. If you wanted to approach them on terms outside of the usual funding cycle, I guess your best bet would be to email Paul directly.

My advice, as much as the experiences YC offers are valuable, if you've been working on a product and plan on launching it soon, I'd launch it. Sure, things might be more difficult, but generating buzz, etc., can all be done by you sans YC. It seems like some here tend to give too much attention to YC and its offerings, not realizing that most successful startups were never given a launch pad the likes of YC.

<comment><AUTHOR> Thanks, I been thinking the same thing, maybe launch and revisit the possibility later.

<comment><USER3> Launch and release updates often. Do some viral marketing and get in front of the face of the people you want to cover you. Don't go directly for TC, as you will spend too much time trying to get them to cover you, there are many other startup press out there will cover you with much less effort... some even let you submit your site to them :D

Chris

<http://www.propertystampede.com>

</comment></comment></comment><comment><USER4> If you have the opportunity to do YC, _do it_. That said, it doesn't sound like you have that opportunity at the moment, since the application deadline was last month.

</comment><comment><USER5> It sounds like you should launch and think about moving to Silicon Valley. YCombinator is in Boston this summer. But if you wanted to be a part of the experience you should go to Silicon Valley.

</comment><comment><USER6> Launch, listen for feedback, iterate, repeat. Do it yesterday.

</comment><comment><USER7> IMO,your best bet is to approach angels or traditional VCs.</comment>


Sovereign: Ansible playbooks to build and maintain your own private cloud - <AUTHOR> https://github.com/sovereign/sovereign <comment><USER2> There are so many servers and apps being installed by Sovereign that I'm certain few would be able to keep it secure ([https://github.com/sovereign/sovereign/wiki/Software-used- by...](https://github.com/sovereign/sovereign/wiki/Software-used-by- Sovereign)). The big win for the cloud is that you're paying a fraction of the cost for access to a, typically, enormous security and operations team. If you want to build software like this that allows people to self-host, you need to scale down what you deploy to what a single person can reasonably manage. This isn't it.

Fun todo: Install this somewhere, nmap it for open ports, then ask "How many of these services had a remotely exploitable CVE in the last year?" "If one of these services had one tomorrow, would I know to patch it and take action faster than someone would takeover my box?" I don't see any containment mechanisms on any of these services beyond what's included by default so a compromise of one service likely leads to total compromise of the entire box.

I had to think about this a lot with AlgoVPN ([https://github.com/trailofbits/algo](https://github.com/trailofbits/algo)), and we built a system with no out-of-the-box remote administration, strong isolation between services with AppArmor, CPU accounting, and privilege reductions, and limited third party dependencies and software. You can't count on a full-time, expert system administrator.

<comment><USER3> This touches on a problem I've been thinking about a lot. AWS, etc, have solved the problem of hardware operation. Containerization is doing the same for OS operation. I think the next thing is _app_ operation.

For some things, I'm happy to use SaaS providers, where they are responsible for the whole stack. For others, I'm happy to use apps, where they just provide the code, and I provide the platform. But for a number of things, I want something in between: I provide storage and compute, they provide code and operations.

Bitwarden for me is a good example. They're a password manager who provides their backend as a docker container anybody can run. I like that, as I don't really want them to have my data, and if they go out of business, I don't want to be cut off from my passwords. But I won't run the backend myself, because I don't have the time and expertise necessary to make sure it stays secure.

Another good example is photo hosting. I would rather keep all my photos on space I control. But I also need modern, maintained software for syncing, serving, and controlling access to photos and related data. I'm happy to pay somebody to make and maintain that software, but not nearly as happy if that means that at any point they might shut down and take my data with them.

I suspect we're headed toward a future where people like Synology and Digital Ocean sell storage+compute, and then other companies sell and maintain user- selected software that runs on those environments. Basically, some sort of app store for servers. But I'd love to see this happen in an open, nonproprietary way, as the drawbacks of Apple's and Google's app stores have become pretty clear.

<comment> yjftsjthsd-h Sandstorm was a really nice solution to this, but it required each app to be integrated with it, which I personally think is what killed it. (Which sucked, because for what it supported it was the best option available)

<comment><USER3> Ah, interesting! Just reading the home page wearing my developer hat makes this stand out: "Each document, chat room, mail box, notebook, blog, or anything else you create is a "grain" in Sandstorm. Sandstorm containerizes each one in its own secure sandbox from which it cannot talk to the world without express permission."

The notion that every document is its own independent unit sounds pretty menacing to me. Could be fine for some things, but getting things running there is sounding like a fair bit of work to me, and very limited.

And then this part is especially bad: "[maybe someday] You won't have to deal with payments | Eventually, we hope to make Sansdtorm implement in-app purchases and deposit the proceeds directly to your bank account"

Right there a lot of incentive to integrate has leaked out. "Please build for our platform in exchange for no money" is not quite the worst offer I've had, but it's definitely not appealing. Looking through the Wayback machine, I see

But the part that really concerns me is that they seem to think that server apps can run like mobile apps. To me one of the most powerful things about SaaS products is that the aggregated use information drives both product and operational improvements and allows rapid response to bugs and issues. So as a developer choosing between this and a SaaS approach, this feels like having one foot in a bucket to me.

For example, I recently outsourced my mail hosting to Fastmail precisely because I want experts to run things. Would I be happier if the data were stored somewhere I control? Definitely. But not if that means the experts aren't paying attention anymore.

<comment><USER4> Sandstorm's design is a little bit menacing! And it does require a fair bit of work sometimes to fit web apps not built for Sandstorm into Sandstorm's model. (The holy grail here is apps built for Sandstorm, but the platform needs to be bigger before more developers do that.) Usually packaging for Sandstorm largely entails locking an app into a single-document model, and stripping out authentication (since Sandstorm handles it).

But the end goal is pretty well worth it: Any grain is incredibly secure by default, and for the most part, app vulnerabilities are irrelevant. A grain where only you have access doesn't need any sort of authentication or security in the app at all. And since each document is it's own sandbox, sharing a document with someone doesn't give them a way in to exploit access to your other documents as might happen with a vulnerability in a more traditional design.

The business model story for selling Sandstorm apps isn't super great right now, you probably could have a licensing model that requested network access through the Powerbox to check the license or something, but in many cases, there's already a wide variety of great open source apps that are free and just frustrating to host and manage without a platform like Sandstorm (or Cloudron). (EDIT: Now that I think about it, Sandstorm used to have a paid license key/feature key system that made no callbacks, I think the licensing info was encrypted asymmetrically.)

As for your support of SaaS data collection, I just can't really agree with you: People who want to give data to a developer can choose to do so, but I think it's ethically wrong to collect data without permission. (Sandstorm servers do have the ability to opt in to provide basic app usage data back to Sandstorm's development team.)

I love FastMail, and have been an enthusiastic customer since 2016. :)

</comment></comment></comment></comment></comment><comment><USER5> This is a pretty cool setup! I have been tinkering in the self-hosting world for awhile now and I would say my biggest piece of advice is to learn Docker. (Not trying to shill for Docker here or start a Docker vs. Ansible flame war.) In my personal experience, Docker images (and docker-compose orchestrations) are more pervasive than Ansible playbooks and when it comes to self-hosting for personal use, hosting all my services in Docker has made it much easier to deploy/maintain them. (Not speaking to business use cases since in that situation you should really have a deep familiarity with your tech stack and be able to roll-your-own Ansible playbook/Dockerfiles.)

Also, there are so many great FLOSS alternatives to Google Apps. This repo contains some, but here are some of my favorites:

* Drive/Calendar/Photos/Keep:

      - https://nextcloud.com/ (I prefer this over OwnCloud)

* Docs/Sheets/Slides

      - https://www.onlyoffice.com/

* Mail

      - https://mailu.io/ (basically a Docker-based deployment of Postfix/Dovecot/etc)

* Hangouts

      - Server - https://matrix.org/

      - Client - https://about.riot.im/

      - (I prefer Matrix.org over Jabber/XMPP)

* G+/Twitter

      - https://joinmastodon.org/

<comment><USER6> > Not trying to start a Docker vs. Ansible flame war

Don't worry, they serve very different purposes. You already probably know but Docker is for running applications in isolation, while Ansible is for provisioning and configuring hosts. For instance, you won't use Docker to harden sshd on your hosts but Ansible.

<comment><USER7> Are there any good resources (besides OP) for using Ansible in a home-server environment? Especially in a mixed docker + Ansible environment.

<comment><USER8> After figuring out Ansible work I started using it to manage several personal VPS machines and the various boxes at home. I just used the Ansible docs, which are pretty good.

</comment></comment></comment></comment><comment><USER9> For my fellow HNers, this is "private cloud" in the meaning of Owncloud, not of Openstack.

<comment><USER10> I hear about Nextcloud a lot more than I hear about Owncloud. Does anyone know why this project uses Owncloud instead of Nextcloud?

<comment><USER11> This project started before Nextcloud existed, I don't know why it hasn't switched, though.

<comment><USER12> NextCloud was started as a fork of OwnCloud by a bunch of OwnCloud devs that were unhappy with the direction the product was taking.

You can think of it in much the same way as OpenOffice vs LibreOffice: devs fork to make a new product, the "original" product stagnates and is mostly used for rent-seeking.

The downside of both is that, to my ears, both "OpenOffice" and "OwnCloud" better signify to outsiders what the product accomplishes, while "LibreOffice" and "NextCloud" really don't, unless you're already familiar with the product or product history.

</comment></comment></comment></comment><comment><USER13> Wow, didn't expect to see Sovereign at the top of HN today! I'm one of the project contributors.

If this project piques your interest, please consider contributing! We could really need more helping hands.

Ansible is easy to learn and most (not all!) problems due to new versions are easy to fix.

Also, if you only want to use a fraction of what Sovereign has to offer to reduce your server's attack surface, that's easy! Just follow the instructions.

</comment><comment><USER14> On the general topic of Ansible and personal infrastructure:

Every time I attempt to use Ansible (or its kin) to manage my own network, it feels overly obtuse and ultimately unhelpful. Its gains seem to be rooted in configuring a large number of _identical_ servers, and isn't geared for a handful of hosts with some commonalities and some differences. Writing playbooks feels like a still-imperative wrapper around shell commands, just in a bespoke and verbose YAML syntax.

Instead I am using my own script that runs a tree of files through a template engine, drops them on each host being configured, and then runs triggers based on what has changed. This seems utterly simplistic, lacks polish, eschews common practices, etc. But the overall configuration seems straightforwardly grokkable compared to the heavy tools.

<comment><USER15> I had a similar reaction, after trying out Ansible at my last job. We ended up switching to fabric, which is all in Python. It was mostly good but had some awkward warts, which it seems that they've mostly addressed in fabric2. Anyway, it might be worth a look, based on my understanding of your use case.

<comment><USER14> Fabric seems more down to earth, but doesn't itself solve the problem of actually defining the configuration of each host.

Having said that, I am to the point where it would be really nice if my ssh pushes ran in parallel, which is one of those robust niceties you give up by going your own way. So I'll have to revisit Fabric because it would be complementary - thanks for the reminder!

</comment></comment></comment><comment><USER16> For those in the market to run a private cloud, please try [https://cloudron.io](https://cloudron.io) . Our motivation is to make it simple to selfhost apps . The main advantage is that we take care of automatic updates across all the apps we package. Happy to answer any questions.

Disclaimer: I am the co-founder

<comment><USER17> Is it really self-hosting if you're running it on someone's cloud?

<comment><USER3> Definitely.

I mean, you could play an infinite regress game. Do you own the hardware? Do you own the cage the hardware is in? Do you own the building that the cage is in, and the land that the building is on? And then we can go toward owning the power company and the connections to anybody your servers talk to.

But in practice, self-hosting is about control. If what you're running it on is a commodity cloud instance that you could get from a half-dozen providers, then any one cloud provider has very little leverage over you.

<comment><USER13> No. If you have dedicated hardware (rented or owned) and full disk encryption you have decent control over your data. On a virtual server you have no control and no privacy.

<comment><USER3> Depends on what you mean by control. It sounds like you're worried about different downside risks than I am.

</comment></comment></comment></comment></comment><comment><USER18> This looks super cool.

Though somewhat offtopic, this line absolutely cracked me up.

>A VPS (or bare-metal server if you wanna ball hard).

I can appreciate a sense of humor.

</comment><comment><USER19> There seems to be a few questionable picks in the readme.

* Why pick ownCloud over NextCloud? The former's forum had 139 posts in the last 7 days and the latter's forum had about 1700. Also some of the features in the former product are locked for enterprise only.

[https://central.owncloud.org/about](https://central.owncloud.org/about)

[https://help.nextcloud.com/about](https://help.nextcloud.com/about)

* Tarsnap is a paid online service. You could try restic command to have encrypted backup to remote storages.

* cgit is an old project released more than 10 years ago and despite being written by the author of wireguard, we have far better stuff like Gitea (or its fork source Gogs) to have user access control with nice web interface for git project management.

</comment><comment><USER20> I currently just let my desktop run constantly. It runs Windows in a KMS for games and sleeping breaks it so I never even suspend. It only seems to use about $10/month in power. I have been considering using DDNS through my router and Cloudflare and trying to create a iOS/Android app that will automatically upload my photos to the my DDNS for storage on my desktop. It feels a little crazy but the idea of syncing my photos to my own machine with no middle man is comforting.

DDNS seems like it's a local too good to be true for solving the dynamic IP problem. I'd prefer to have a static IP for my gigabit Internet but sadly Webpass doesn't allow it. Does anyone have experience doing something like this?

<comment><USER21> Ngrok as alternative to dynamic DNS?

<comment><USER20> DDNS maps a domain to your current dynamic IP. Its built into most routers. They will push the new ip to a DDNS service when it changes.

</comment></comment></comment><comment><USER22> I looked at Soverign at the time I was setting up private cloud on a $5 VPS (prgmr.com with 1.5 gb ram)

I went with YunoHost.

[https://yunohost.org/#/apps](https://yunohost.org/#/apps)

I initially tried sovereign, but once I figured out I had to pay for tarsnap backup service, and that it did not have ansible for nginx setup (I needed that experience for work stuff), I went with Yunohost.

Sofar I am happy with YunoHost and subscribed to send periodic donation to the project.

Overall, though, if you are working with ansible at work, or want to advance in devops field, learning ansible and contributing to Sovereign project would be a good path to take.

</comment><comment><USER23> Dumb question maybe... but why would you not just configure this yourself on a single virt/host? Most of these services would take less than a day to configure. So many questions on why this is a good thing.

Like, there are countless ways to configure your MTA and spam filtering- if you are going to have to dig through this config.. why not just roll your own?

Can someone explain to me why you need ansimble for this? or am I just being stupid and this is like an exercise to show what the toolchain can do?

<comment><USER24> If you're the type of person that configures servers on your own time for fun, than you would likely find automating the process 'just because' to be fun as well.

You do not need ansible for config of a personal server at all.

<comment><USER23> Oh cool cool, I thought I had a stroke or was missing something here. This is a cool idea in that case.

</comment></comment></comment><comment><USER25> As the CTO of an established company, I cannot imagine a situation where I would prefer to maintain my own infrastructure vs using managed cloud services.

If I get locked in on a specific product, it's way cheaper to redesign that around an alternative vendor than it is to maintain a private cloud (Ansible, Kubernetes and friends included).

As a nerd, I'd prefer to do things myself, but I have business needs to attend to.

<comment><USER26> Cost. Depending on your scale and needs, running stuff on real hardware you manage can be a lot cheaper than AWS/GCP.

</comment></comment><comment><USER27> Is there a benefit to doing this over something like Cloudron(1)?

I see this being for people that just want things to work without much of the effort to make it so. If that's the case, a simple web UI that treats all the little solutions as "apps" in a way makes sense. Not plugging here, just curious to the practical everyday differences.

1\. [https://cloudron.io](https://cloudron.io)

<comment><USER4> Cloudron.io seems pretty nice, speaking as someone who uses/works on a different platform (Sandstorm.io). Cloudron is going to cost you money if you want the benefits of automatic updates and the like, which is a downside for some (I think paying for good products/services is worthwhile), but I absolutely think making management of a ton of apps simple like a phone is the key to self-hosted online services. One of the biggest features of a good self-hosting platform should be unified authentication and identity, so you aren't managing your account on a dozen different apps.

I've always been impressed by Cloudron's well-maintained app library and constant march of major feature improvements to the platform.

<comment><USER28> Just wanted to mention that Sandstorm is awesome. For some reason, despite being around for years, I only found out about it recently. I really think that it should be way more popular than it currently is. Lots of apps are outdated, so I'm planning on investing some personal time to contribute to it.

<comment><USER4> By all means, hit us up on the mailing list or in IRC if you have any questions or need any help!

</comment></comment></comment></comment><comment><USER29> I've used this project off and on for years, and it's always worked perfectly. I'd have an infosec conference to go to, I'd setup a host with wireguard, give my friends the cert, we'd all tunnel out though that, then tear it down after the con. Total cost a few dollars (most are $5/month)

</comment><comment><USER30> Does anyone here on HN have experience _using_ Sovereign in a team setting? I have a few questions:

* _Mobile contact and calendar syncing_ : How well and reliably does it work?

* _Calendar group features_ : how well do they work?

* _Setup and maintenance_ : how much hassle is involved?

<comment><USER31> Doing that stuff is hard.

Sovereign doesn't solve all your operational problems.

I think it's suitable for personal use. I wouldn't run it in a production setting without thoroughly understanding all parts of the stack.

I would say it's good for personal use or to demonstrate what ansible is capable of.

</comment></comment><comment><USER32> Isn't this just duplicating effort that's probably already been done, in many cases by the first-party maintainers, in Dockerfiles?

I don't mean to start 'Docker vs. Ansible', I just wonder why if you wanted a quick way to setup a single-server 'own private cloud' you wouldn't just go with what already exists, and list the images you want in a docker- compose.yaml file?

(Which would additionally set you up for 'scaling' if you had any concern that you might be able to save some cash with a two or three smaller servers than one big one by the time you'd installed everything you want.)

<comment><USER33> Not everyone wants Docker installed on their servers. It's not a requirement with this playbook.

Furthermore, if you do want to use containers, there are tools like ansible- bender[1] that use Ansible to build container images.

[1] [https://github.com/ansible-community/ansible- bender](https://github.com/ansible-community/ansible-bender) (edited the link to point to the ansible-community repo)

<comment><USER32> But I'd have thought if you care that Docker isn't installed on your servers, you're probably not running this anyway?

It seems to me that the target demographic is people that just want the least effort minimal faff way of getting some services up and running for personal non-production use. And for that it was my suggestion that many of the services probably already provide a Dockerfile upstream, so the easiest thing to do would be to install docker-compose, list the images, and `up`.

<comment><USER33> This project has nothing to do with Docker, and there are many reasons why someone would want to avoid running Docker on a server (a separate issue from using containers). I'm confused about why you think Docker is relevant to this set of Ansible playbooks, and also why this would only be suitable for "personal non-production use."

The only requirement for a remote host to be managed by Ansible is python, and even that can be installed by Ansible itself using the `raw` module on an initial run with nothing but ssh access.

No need to gather a bunch of random Dockerfiles from various places, tweak them to be compatible, and create a docker-compose file from scratch... how is that "the easiest thing" when this is a complete set of Ansible playbooks where the work is already done?

<comment><USER32> I meant easier than creating these Ansible playbooks from scratch, when many if not all of the playbooks will do the same required steps as have already been encoded in Dockerfiles in many cases by the maintainer of the upstream project (the one being deployed) itself. There certainly could be value in collecting that in one place still.

The first line of the readme says it's for a 'personal cloud'.

<comment><USER33> The initial commit of this repo is from August 2013, a few months before the first public beta release of docker-compose.

</comment></comment></comment></comment></comment></comment><comment><USER34> Nice resource, will definitely give it a spin, also this is the first time I've ever come accross `Tarsnap` looks really interesting too !

</comment><comment><USER35> Nowhere do I see mention of how to update and upgrade this thing after initial deployment... How does it work ?

</comment><comment><USER25> I've used Ansible successfully to turn Windows laptops into Wintendo machines :)

</comment><comment><USER10> One of the most important things when managing data is not losing it. Does this have a solution for doing backups built in or do you come up with your own solution like using something your web host provides?

<comment><USER36> Did you miss the bit about tarsnap?

<comment><USER10> Apparently I did. Oops.

</comment></comment></comment><comment><USER37> Version for a Pi.

Version for BSD.

</comment><comment><USER38> I wrote something similar that's custom for my personal infrastructure:

[https://github.com/sumdog/bee2](https://github.com/sumdog/bee2)

There are some blog posts in the README that go into how I built a lot of it. A lot of it is specialized for me though. I have a ton of rspec/tests but I don't have a real config schema or entirely useful error messages. I might add some in the future.

Looking at the list in this, I'd advice against nextCloud(ownCloud). I recently setup their official Docker containers and the web piece works alright, but their F-droid app continually crashes and I had to uninstall it and the nextcloud-client in Gentoo's package manager segfaults at home and refused to build at work.

I've read other stories of data loss with nextcloud. It might be better now but my initial experiences made me use syncthing. Syncthing does use relays if you're behind a NAT, but if you have openvpn setup, you can also force it to use a direct IP address as well.

If you're thinking if self hosting and have the time, I'd suggest building it yourself; borrowing (and properly accrediting/licensing) other open source projects, their ansible scripts and containers and such. You learn a whole lot about why this tooling is so complex.

</comment><comment><USER39> Quit this damn nonsense with Ansible or whatever garbage fashion fad is in vogue these days and finally learn how to make OS packages so you can do configuration management with normal shell scripting inside of them, because that's what it's for. The amount of incompetence and insanity from incompetence has gone too far. Damn it, this is exactly why IT sucks so bad!!!

<comment><USER40> Maybe you've never worked with someone that sucked at shell scripting, or packaging.

Ansible is awesome for enabling people to do reasonably complicated things in a consistent manner, at scale, without having to write all of the boilerplate code to be able to do so.

This is forgetting the fact that Ansible is reasonably opinionated, which is great for lowering the barrier to entry and helping devs/admins to be productive quickly.

When I just need to Get Shit Done, Ansible is awesome.

<comment><USER41> > lowering the barrier to entry

That's the opposite of a good thing.

> When I just need to Get Shit Done, Ansible is awesome.

"just" is the keyword. "just" instead of caring about long term maintainability and security

<comment><USER42> LOL on your first point.

For your second, Ansible is specifically designed for long term maintainability and security.</comment></comment></comment></comment>


Show HN: Startup Frontier, an email list of interesting startup jobs - <AUTHOR>

Startup Frontier is an email list that I've been building in my free time.  It highlights interesting new startup and small business tech jobs.
Unlike traditional job listings, these also contain an interview with the company to try and examine the product/leadership/culture.  It's my hope that this format will give potential applicants a better idea of what they are applying for.  Something more friendly than traditionally sterile job descriptions.
The model is simple:
-Startups tell us about an opening at their company.
-If we think the company might be a cool place to work, we interview the company
-We publish the answers to our email list
This list is intended for both people actively looking for a job as well as those already employed but keeping an eye out for a better position.
I have several companies already in the pipeline and wanted to start building a larger readership.  This is all free, just a labor of love at the moment.  Any feedback would also be appreciated.
http://www.startupfrontier.com <comment><AUTHOR> And clickable: <http://www.startupfrontier.com></comment>