Interview with John O'Nolan of Ghost - <AUTHOR> https://www.indiehackers.com/businesses/ghost <comment><USER2> > What's your advice for indie hackers who are just starting out?

> Honestly my single piece of advice would probably be to stop looking for so > much advice. Shut the fuck up and go and build something.

I like this. I see a lot of people, and I fall victim to this myself, over analysing the best way to do X, rather than just trying it and learing / adapting as you go. I think there is some value in figuring things out up front, but not at the cost of never taking the plunge.

<comment><USER3> The little success i have in life is largely due to this exact model. I have home-built so many big grandiose apps and solved many problems learning them myself. I didn't make any hits, hell i didn't even finish half of them, but i largely solved a lot of problems myself, figuring and learning.

Now (for better or worse) i think i'm at the stage where i need to actually improve and deploy them fully. Learn maintenance, learn upkeep, maybe even learn some minor advertising and metrics.

Self taught experience has been so insanely valuable. Value derived from pain.. but still value.

<comment><USER2> Yeah I think at the start there is a lot of value in just starting, perhaps without even finishing. It's that stage of just getting over the first hurdle and getting into it.

That's fine for a while but then as you say you get to the place where you have to finish. I think this can be almost as big of a hurdle as starting as it can involve a whole host of new challenges, some of which you've mentioned above.

Finishing is also, in my opinion, typically not as exciting. You've likely already solved all the intersting problems and are left with the "lesser" tasks involved in getting it over the line. This is something I've been learning myself over the past year or two.

</comment></comment></comment><comment><USER4> Hi, I'm one of the volunteer core devs on Ghost

The company is a non-profit that supports journalism and professional publishing. Everything is open-sourced. I'm leading the work on the Desktop App ([https://github.com/tryghost/Ghost- Desktop](https://github.com/tryghost/Ghost-Desktop)), but all projects (server, admin interface, etc) can always use more love.

If your company allows you to donate some time to non-profits and you think that democratized journalism is important, consider helping us out

<comment><USER5> I am interested and have the cycles. What issues should be started with?

<comment><USER4> Neat! To avoid being sucked into anything too big, you might want to check out the "good first" issues on the Desktop App ([https://github.com/tryghost/ghost- desktop/issues?q=is%3Aopen...](https://github.com/tryghost/ghost- desktop/issues?q=is%3Aopen+is%3Aissue+label%3Agood-first)) or the beginner ones on the heart of it all ([https://github.com/tryghost/ghost/issues?q=is%3Aopen+is%3Ais...](https://github.com/tryghost/ghost/issues?q=is%3Aopen+is%3Aissue+label%3Abeginner)).

</comment></comment></comment><comment><USER6> I've never understood the pricing of ghost. I started a personal blog and my first post got almost 50k uniques when it got to the top of /r/programming and the front page of hacker news.

So the pricing model of ghost is problematic because:

1) I don't know what level of plan to buy to support this kind of traffic.

2) $19/mo seems really expensive for a personal blog. (and wouldn't support my traffic load)

3) A $5 instance at DO handled the load really well with room to spare and conservatively took about an hour to setup.

So, I guess I'm not their target customer? I want to pay around $10/mo for a hosted blog and support like 500k uniques. There are some wordpress hosts that handle this level of traffic at this price point I think.

<comment><USER7> Their pricing didn't make sense for what I wanted either. I wanted to set up two very low traffic blogs that may some day get real traffic. So as any developer would do, I spent much more money when considering my billing rate per hour in making my own version.

I have a couple Ghost blogs set up with Docker, Let's Encrypt SSL & NGINX that run on AWS. It works great for me but I haven't taken the time to open source it yet because I very slightly modified the Ghost code to play nicer on AWS. I'm also using the SQLite database which may not be ideal for everyone but it prevents me from having to pay to use multiple "real" databases from AWS.

The perks are that it is really quick & easy to add multiple blog sites. Each one lives in its own Docker container. It's also very fast on the AWS free tier. Since it's on Docker, I can boot it up anywhere very quickly as well.

If anyone is interested in working with me on improving it, I'll gladly push it to a public GitHub repo.

<comment><USER6> I'd take a look. I'm curious about what you tweaked to the code?

<comment><USER7> I originally put this on GitHub when I started. Then I ended up doing a bunch of work & hosting it on BitBucket to a private repo while I was learning Docker & Ghost. I was trying to prevent any accidental leaks of secret keys or passwords. This linked repo has my Ghost changes in it.

I added ghost-storage-adapter-s3 to package.json so that the files would be stored on s3 instead.

I think the only other change to Ghost I made is purely optional & was done out of my taste. That was to remove the date directory appended to file uploads. [https://github.com/mattferderer/ghost- blog/commit/7d373913a5...](https://github.com/mattferderer/ghost- blog/commit/7d373913a5c239f8bbd7f4abfe84a81dddcc9bc2) I understand why they did that, I just didn't like it. It may have also caused issues with my AWS S3 but I can't remember.

</comment></comment></comment></comment><comment><USER8> It's weird that a company as well known as Ghost has a site that feels like a wholesale copy of Stripe's old design.

I don't know how I feel about it, slightly negative probably. I think Stripe does a lot of stuff really well, and it makes sense to copy many of the things they do, mostly from the UX and information design aspects. But to copy the branding itself seems like it defeats the point, because it makes Ghost feel cheaper.

Check out the Wayback Machine...

\- Ghost 2017: [https://ghost.org/features/](https://ghost.org/features/)

\- Stripe 2016: [https://web.archive.org/web/20160304012926/https://stripe.co...](https://web.archive.org/web/20160304012926/https://stripe.com/us/features) [https://web.archive.org/web/20160304013548/https://stripe.co...](https://web.archive.org/web/20160304013548/https://stripe.com/relay) [https://web.archive.org/web/20160304014557/https://stripe.co...](https://web.archive.org/web/20160304014557/https://stripe.com/subscriptions)

I normally wouldn't have commented on this, but I just saw the "Scale API" startup's site yesterday and noticed that they too were doing a wholesale copy of not just Stripe's information design, but their branding too...

\- Scale 2017: [https://www.scaleapi.com/](https://www.scaleapi.com/)

\- Stripe 2017: [https://stripe.com/radar](https://stripe.com/radar) [https://stripe.com/](https://stripe.com/)

It doesn't seem like a smart approach to take, but maybe it works.

<comment><USER9> Besides the gradient background I'm not really seeing it on the ghost site. On the Scale site I see what you're saying. This comment does bring to mind something I heard a while back.

What web developers say to you when they see something you made with bootstrap: "Another bootstrap site."

What everyone else says when they see the same thing: "I didn't know you were good at design."

</comment></comment><comment><USER10> I've been using Ghost since v0.6, 2 years ago, and I love the community. They're quite helpful on Slack.

One thing I think Ghost is missing right now is a solid mobile experience. I'm working to fill this gap with Quill [1], a native Android app for Ghost with an offline mode, image uploads, full Ghost Markdown support, and a sweet design. And it's open-source :)

Offline support in particular is IMO going to turn out to be an important feature, because I can imagine Ghost's target audience of journalists wanting to publish quick thoughts from places with a spotty connection. Admittedly I haven't actually validated this - building offline support presents an interesting engg+UX challenge, so that was the original motivator.

Feedback has been really positive so far [2], so I'm gonna keep going! Would love to get feedback from HN as well.

[1]: [https://github.com/vickychijwani/quill/](https://github.com/vickychijwani/quill/)

[2]: [https://github.com/vickychijwani/quill/wiki/What-users- say](https://github.com/vickychijwani/quill/wiki/What-users-say)

<comment><USER11> Are you aware of this library in a very similar space? [https://github.com/quilljs/quill](https://github.com/quilljs/quill)

Not trying to put you down, just want to make sure you are aware of the potential naming conflict (both things are for authoring content) in case that creates a legal headache for you one day.

<comment><USER10> Yes - I only found out about it after I had my app out there with a feather logo and everything.

However I don't think it will cause big issues, as quilljs is a JS library, while Quill (the app) is targeted directly at Ghost's users who will largely (presumably) be journalists. The slight name confusion within dev circles is something we'll just have to live with.

</comment></comment></comment><comment><USER12> I used to self host Ghost on Digital Ocean and then switched over to their hosted offering.

I'm really happy I went with them, the culture and idea behind the company appeals to me and the lack of bells and whistles is made up for in a really simple and fun to use editing experience. At least in my opinion it far outshines Medium.

<comment><USER13> I went in the other direction because their personal plan went from $5 (IIRC) to $20. I have a $5 droplet hosting it and the only difference is that I have to restart Ghost nightly or it will eventually seize up.

Honestly I don't know why I'm using it though. I probably should be using Jekyl or something like that.

<comment><USER14> Did you try adding a swap partition? I'm using the ghost image from digital ocean on a 5$ instance and even when I set it up manually before I didn't have the problem you described.

<comment><USER13> I didn't, but I'm not sure my constitution will withstand setting up a swap partition for a system that could be replaced by make and a trivial HTTP server.

</comment></comment></comment></comment><comment><USER15> > The other one was that we started out on hardware servers. This was right at > the early stage of cloud VPS services catching on and becoming mainstream, > and we were just behind the curve. It was an expensive mistake.

I wouldn't think 2013 was early stage of cloud VPS services - but maybe I don't have a good enough memory of the time.

<comment><USER16> It wasn't, technically, but it was in terms of mainstream availability. Digital Ocean started around the same time as us, for reference. So it cloud VPS was just starting to become the popular option, but it was still far from being the obvious default option.

The other reason we went with hardware that I didn't mention was that we wanted to cram a whole lot (thousands) of node apps onto every server and we figured being on a bare metal setup would be an advantage to optimising that. (In practice: Not really, as it turns out!)

</comment></comment><comment><USER17> The founder thought he had hit upon a real need in the world, but put that the test before starting development. How many people only figure this out two years down the road and thousands of dev-hours wasted?

> I wrote down my thoughts in a blog post, and about 1 week and 250,000 > pageviews later, I decided to start working on the idea properly.

> The next question was: Would they also open their wallets? For this, we went > to Kickstarter. If we could get enough validation for people to actually > fund the development of the software to a production-ready state, then we > knew we would be on to something.

I love that his demo for kickstarter was 50% mockups. Truly an MVP.

</comment><comment><USER18> His first "idea" blog post seemed to have 250,000 pageviews in 1 week, which is quite impressive. I wonder where that inflow came from.

<comment><USER16> It was from right here, on this very website, the news of hackers

</comment></comment><comment><USER19> I really like ghost. It's very simple, and straight forward. I've built a couple of websites based on it now, and wrote my own themes. I'm not sure I'd pay for it, but as an open source self-host project, it's pretty great.

</comment><comment><USER20> Is it just me or was Ghost at one point a "Show HN"?

I remember playing with a minimalist blogging platform in Node.JS at one point a couple of years ago, but honestly that could be one of a dozen or so projects.

</comment><comment><USER21> I set up Ghost on a DO droplet the other day. Even opting to manually install it rather than use the Ghost on Ubuntu image, installation and setup was a breeze.

</comment><comment><USER22> I found the ghost pro product to be very well done. Nice clean and simple interface with only the knobs and buttons needed. Everything worked 100%. It is well worth the $20/month for a company blog.

I'm currently hosting my own ghost blog and its just as great, just takes more attention to operate it.

The DNS configuration doesn't yet support my provider. I believe they're on cloudflare (!)

</comment><comment><USER23> Hm, I never realized ghost was non-profit....

</comment><comment><USER24> " I had about 30,000 people on a mailing list," This, so much of this.

<comment><USER25> People underestimate how significant a huge mailing list can be!

</comment></comment><comment><USER26> Is there a serious Wordpress/Ghost alternative written in Go yet?

<comment><USER27> There's a lightweight clone written in Go, Journey [1], which uses Ghost themes. It got a fair amount of attention at one point, but development doesn't look very active at the moment.

[1]: [https://github.com/kabukky/journey](https://github.com/kabukky/journey)

</comment></comment><comment><USER28> Well, interesting:

> Initially I got a ton of offers for development help from people on Hacker > News, which materialized to precisely nothing.

</comment><comment><USER29> I was experienceing really poor SEO results for my previous ghost site (self hosted on digital ocean). Never understood why...

<comment><USER30> I migrated from Wordpress to Ghost (using some sort of provided Ghost tool) and my site started getting way more hits from search engines.

I'm guessing it's because the ghost site was noticeably faster and was mobile friendly, which my old WordPress site was not. I didn't do any SEO tuning or anything.

<comment><USER31> > I migrated from Wordpress to Ghost (using some sort of provided Ghost tool) > ...

More people should do this. Recent security issues of WP is kinda horrific, but then again it always been a security nightmare. It makes me sad that people don't realize it, the only answer you get is: " but it's so popular so it must be good", well smoking has also been popular - it doesn't mean it's good for you.

</comment></comment></comment><comment><USER32> I don't have much to say, except that I've been using Ghost for a while and love it.

</comment><comment><USER33> $20/month? Seriously? No thanks.

<comment><USER34> Why does that feel like too much? Just curious how you're thinking about the pricing.

<comment><USER33> I guess if I was a journalist, it might not be bad price, but I'm just a casual blogger. I currently host my own Wordpress site and keep it up to date myself. As the other reply to your comment mentioned, we're pretty technical here on HN and Ghost is probably something we can hack together on our own.

Even so, for the casual blogger, $5/month is probably the max.

<comment><USER35> He notes right there that super price sensitive people are actually more demanding and more annoying than less price sensitive folks.

</comment></comment></comment></comment><comment><USER36> The headline is a bit misleading, i thought a subscription is $62,000 per month, which is a bit steep :)

<comment><USER37> According to their pricing[1] their lowest price is $19.00/mo. Assuming the bulk of their customers are on this price band it's roughly 3000 paying customers, paying each month.

[1] [https://ghost.org/pricing/](https://ghost.org/pricing/)

<comment><USER38> What the, didn't this used to be a lot cheaper?

<comment><USER37> I cant recall it being cheaper than $10.00/mo. If you're looking for something cheaper than ghost there is Posthaven[1]. I'm not affiliated with Posthaven in any way, I just wanted to offer an alternative if anyone is looking.

[1] [https://posthaven.com](https://posthaven.com)

</comment></comment></comment></comment><comment><USER39> > (1) old, unfocused open-source platforms which are tired and broken, or (2) > new, amazing publishing systems which are completely proprietary and closed

Nothing against Ghost, but I've spent about a decade in the area of content management and publishing and don't recognise 1 or 2. The proprietary market leader is AEM which is atrocious to actually implement once you get past their sales demos, and in open source you have Drupal which is a well proven solution for large and small scale publishing, particularly relevant with Drupal 8 and its publishing focused distro Thunder (both particularly adept at services and deployment, tricky areas in publishing)

<comment><USER31> I like Drupal but I would not advise anyone to start a new project on it. Not in a world where we have Django CMS and Wagtail.</comment></comment>


Show HN: Githooks Made Easy with Poetry - <AUTHOR> https://github.com/thomasthiebaud/poetry-githooks <comment><USER2> I was expecting bash scripts in the form of haikus.</comment>


Show HN: Changeforge – $150 handcrafted sites for nonprofits - <AUTHOR> http://changeforge.org <comment><USER2> Neat idea until someone reads the FAQ

> "Our organization makes no money offering it's services in creation and > updating of websites; however, we do ask that organizations cover the > minimal expenses that hosting a website may compile. These costs include > paying for domains, provisioning SSL certificates, and other small fees that > come along with building a website. We charge every organization a one time > fee of $150 after we complete your website. No other fees will ever be > charged."

So its free but theres $150 fee.

How about saying "$150 handcrafted sites for nonprofits"?

<comment><AUTHOR> We thought hard about this and in the end decided it's in the best interest of the nonprofits to host and manage their content for them. The $150 fee covers our expenses and alleviates the need for monthly payments.

Also it's worth mentioning that once a nonprofit has paid for something, albeit a very small fee, it makes them far more willing to put effort into giving us feedback.

Think of it as getting a free car but you still need to pay for the gas. Having a slogan of "$150 websites for nonprofits" dilutes the clarity of our mission and makes it look like we are profiting.

<comment><USER3> > _Think of it as getting a free car but you still need to pay for the gas._

The difference is that any service offering a free car would rightfully be seen with skepticism. (and in the case of game shows, you still have to pay tax on the free car!)

You can't say "free" in the marketing. No way around it. One-time low cost is fine, but not free.

<comment><AUTHOR> I think there's a better way to handle this. We remove the fee and simply ask each organization that gets a site for a donation. They will not be required to pay but we will encourage them to, larger donations could make up for those who don't pay.

Thanks for the feedback, I'm making the changes now.

</comment></comment></comment></comment><comment><AUTHOR> Hey everyone, founder of Changeforge here.

This is a follow up to this thread: [https://news.ycombinator.com/item?id=11142402](https://news.ycombinator.com/item?id=11142402)

We received such a positive reaction we decided to take it to the next level and setup a full blown organization. I want to give thanks to the Hackathon Hacker Facebook groups that have been an immense help in spreading the word, providing feedback, and encouraging hackers to volunteer for our organization.

I'm excited to hear everyones thoughts!</comment>


DoD Open Source FAQ - <AUTHOR> http://dodcio.defense.gov/OpenSourceSoftwareFAQ.aspx

<comment><AUTHOR> Despite what this document says, there's no way in hell my IT department will let me use anything on this list except Perl, and only that because they have systems that depend on it explicitly.</comment>


Don't Use ISO/IEC 14977 Extended Backus-Naur Form - <AUTHOR> https://dwheeler.com/essays/dont-use-iso-14977-ebnf.html <comment><USER2> > Clearly expressions like [a-zA-Z0-9] are shorter and clearer.

Obviously the above is shorter, but is it really clearer? The ISO/IEC 14977:1996 is longer but very explicit. The above definition contains an implicit understanding about ASCII encodings i.e. that a-z, A-Z, and 0-9 are disjoint ranges. Someone without an understanding of this might confuse a-zA as one range, zA - Z0 as another range, and Z0-9 as a third range. Further, one might wonder if a-9 is a range that would include all alphanumeric characters. This is not exactly clearer than the ISO/IEC 14977:1996 notation, where it spells it out for you in explicit terms.

> Ranges also make exceptions clearer, e.g., if you omitted the letter O it > would be obvious in a range but not obvious in a long list.

This would be written:

letter_except_O = letter - "O"

I don't see how that's not obvious.

<comment><USER3> I tend to agree.

> Ranges also make exceptions clearer, e.g., if you omitted the letter O it > would be obvious in a range but not obvious in a long list.

That feels true for 0-9A-Za-z, specifically. But that's only because of the ubiquity of ANSI. In EBCDIC A-Z and a-z aren't contiguous, and POSIX only requires 0-9 to be contiguous.

In practice those are esoteric caveats we can all ignore, but for _everything_ else (every other potential range) it can't be ignored at all. The range short-hand is actually quite useless except for very terse scripts (e.g. sed) and only then for A-Za-z (or A-Fa-f).[1]

Similarly, defining letter using the long form may be more error prone as compared to the idiomatic short form, but that's the _only_ case. In practice letter is often predefined, and in any event it's rather trivial to verify oneself--step through the alphabet, then double check by counting letters to 26. I don't think I've ever had an error where I forgot a letter in a long- form A-Za-z set, but I _have_ forgotten a letter in a long-form A-Fa-f set and even done stupid stuff like a-e in short-form precisely because it's easier to be sloppy when you _think_ it's difficult to get wrong. In terse code big errors are inconspicuous.

[1] In writing portable sed and tr code I typically list the letters individually as IME neither [[:alpha:]] nor [A-Za-z] are universally supported from the _default_ implementations. /bin/sed and /bin/tr may not be the system's POSIX-compliant implementations or may require special environment presets, and it's usually easier to live within de facto limitations than to debug and maintain a complex preamble that attempts to locate the POSIX- compliant utilities.

</comment></comment><comment><USER4> Title woefully inaccurate: original is "Don't Use ISO/IEC 14977 Extended Backus-Naur Form (EBNF)" and the article can be summarised as "Use W3C EBNF instead".

<comment><USER5> Agree. The article has several criticisms of ISO/IEC 14977 specifically, which seem quite reasonable to me. The article isn't a criticism of EBNF in general.

</comment></comment><comment><USER6> Good article, bad Hacker-news title.</comment>


Introducing Instapaper 4.0 for iPad and iPhone - <AUTHOR> http://www.marco.org/2011/10/17/instapaper-4-released <comment><USER2> It's great to see a one man show like Instapaper doing so well. His space is becoming more crowded yet Marco's focus and drive means Instapaper keeps delivering more and more value. The changes in 4.0 look great.

Kudos Marco. You're an inspiration to solo founders (and anyone) looking to start something online. P.s. check out Marco's show with Dan Benjamin, Build and Analyze. I've been listening while I walk to work. It's interesting and insightful.

<comment><USER3> Linkify cause it sounds interesting <http://5by5.tv/buildanalyze>

<comment><USER4> Marco comes across as a real ass on his podcast. Which has made me not listen to Build & Analyze, or use his app. Hell, "Build & Analyze" isn't so much about "Building & Analyzing" as it is him bitching about stuff. I'm not even talking about the coffee discussions, I can get through that stuff, the bullshit attitude I can't get through though.

He used to be pretty humble in the first dozen episodes, but he's slowly gotten a big head and turned into a dick. At least from my perspective.

I don't recommend his app any longer, instead, I suggest people use one of it's competitors, Read It Later.

Again, the podcast isn't so much about building apps as it is a soapbox for him to complain about other applications and other developers. While he does discuss some of the aspects of Instapaper, he may as well have called the podcast something else. If you're expecting developer oriented discussion there are better podcasts to listen to.

If you're going to spend time listening to a 5by5 podcast, I suggest two that are much better. Hypercritical with John Siracusa. John at least knows how to complain while being constructive, unlike Marco. The second would be The Incomparable, on a totally different topic but very worthwhile.

As as example of marco being an ass. Just listen to any of the podcasts from 10-onward. Also, listen especially to the programming episodes where he tries to argue against Siracusa but instead sounds like a whiny brat.

edit: Keep on down voting people. Seriously. It's called an opinion. If you don't like it, too bad. But it helps people make a valid attempt at determining whether they want to listen to something, or read something, otherwise spending their time with something. Make your own opinion of the podcast and Marco. But down voting simply because my opinion is different than yours is just stupid.

<comment><USER5> I find your comment really amusing. Your whining and complaining about Marco's podcast doesn't exactly make you look like the paragon of humility, reason, and understanding.

It's almost as if HN has become a soapbox for you to complain about some application or developer ... ok sorry for that last (clearly hyperbolic) jab. I hope you get the point though, and take it in the friendly and jocular way it was intended.

<comment><USER4> It wasn't intended to come out as if I was complaining. Someone mentioned the podcast, it's not as though I brought it up myself. I liked the podcast in the beginning. It just simply took a different path than it should've in my opinion.

The title of it is "Build & Analyze" right? So, it should be about "building" things (whether that be coding, building said code, or as a metaphor for other things in life) and "analyzing" things related to the same... code or life.

But instead there is very little discussion of building... and the analyzing is ranty and uninspired.

One of the recommendations I made was Hypercritical with John Siracusa. Let's compare and contrast a bit..

Siracusa is one of those guys that just knows how to take something, whittle it down to nothing and find the faults. There's nothing wrong with finding fault in things. There will _always_ be faults, however big or small. The difference is in how Siracusa talks about them. He's critical of things to the point of beating a dead horse. Hypercritical is perfect for his podcast. Probably the most apt name I've ever seen for a podcast. But when he discusses these faults he provides some of the best examples he can come up with for _why_ he feels that way, and/or _how_ the faults they could be corrected.

Marco on the other hand just. Complains. I think he tried in the beginning to provide just cause for his complaining. But in the end he failed to be able to do it consistently. Instead, the podcast turned into another version of The Talk Show. At least with the Talk Show Gruber can be entertaining. Though I rarely listen unless the show notes show me something interesting. But Marco is trying to emulate Gruber and failing hard. Even his blog is taking on the same type of thing with a tiny bit more iOS discussion.

Either way. People can make their own opinion. I just hoped to make it a quick way for people to know to avoid it. If they're like me and they find annoying dick-ish podcast hosts to be on the do-not-listen list then they know right away that Build & Analyze isn't for them.

<comment><USER6> _The title of it is "Build & Analyze" right? So, it should be about "building" things (whether that be coding, building said code, or as a metaphor for other things in life) and "analyzing" things related to the same... code or life._

The title is actually taken from a feature in Apple's Xcode, and as far as I can tell is just meant to indicate, "Here are the thoughts of an iOS developer." Nothing wrong with that.

</comment></comment></comment></comment></comment></comment><comment><USER7> This is a brilliant example showing what great visual design and typography can do for an app. I never liked using Instapaper because I thought it looked so ugly. Now it's on par with the likes of Reeder and Twitter and I'm much more likely to use it.

I'm not sure how many people think like me but I just can't stand using software I think is ugly. It's no fun for me.

(That said, I think the actual user experience has also improved – which is equally as important.)

</comment><comment><USER8> tl;dr Instapaper is great for iOS. A Kindle + Readability's Send to Kindle bookmarklet is an excellent alternative.

I was an avid Instapaper user on my iPod Touch until I got an Android phone. Marco has publicly stated his reluctance to support Android, and the third party apps for instapaper were all pretty pathetic. So I switched to Read it Later for a while.

Until I got a Kindle, which changed the game for me. Reading on the Kindle is so much a better experience than on another glowing screen that I don't even bother to try to read long form on the phone anymore.

I went back to Instapaper for a while, using a Windows app called Wordcycler to sync, but now use Readability's Send to Kindle bookmarklet. It cuts out the syncing part (the Kindle just downloads content automatically when it has an internet connection), and I've found that it retains author and publication data more reliably.

<comment><USER9> Every Kindle owner should know about Readability's Send to Kindle feature and Calibre's e-book converter. Long live e-ink!

<comment> brown9-2 Is Readability's Send to Kindle only available for the $5/mo subscription?

klip.me's "Send to Kindle" extension is free and also pretty awesome <http://www.klip.me/>

<comment><USER10> No; in fact, you don't even need an account. Just add firstname.lastname@example.com to your Kindle's approved sender list & install the browser extension[0] or bookmarklet[1].

0: <http://www.readability.com/addons> 1: <http://www.readability.com/bookmarklets>

</comment></comment></comment></comment><comment><USER11> The bad news: a change in how iOS manages files in version 5 means Instapaper's ability to store articles for you to read offline has reached something of a limit. If you get low on space iOS will now delete Instapaper's copies of articles:

<http://www.marco.org/2011/10/13/ios5-caches-cleaning>

This is less of a problem if you are online all the time as Instapaper will redownload them, but it still kinda sucks.

</comment><comment><USER12> The way this version handles footnotes[1] looks absolutely outstanding. More e-reading software should have a pop-over like this. I'd pay way more than $5 to get this feature on my Kindle.

[1] <http://www.marco.org/media/2011/10/ip4-footnote.png>

Also, a footnote of my own on the search subscription: Marco's talked a bit on his podcast about people wanting to subscribe to Instapaper via in-app purcase rather than through PayPal. However, Apple won't let you have an in-app purchase that doesn't add any functionality. Putting 2 and 2 together gives you a "search subscription" that is identical to a normal Instapaper subscription.

<comment><USER5> I have been using this Chrome extensions[1] which handles footnotes the same way on most sites (including Wikipedia and Daring Fireball, the only 2 I can recall off the top of my head).

[1] [http://openideas.ideon.co/2011/rehabilitate-disruptive- footn...](http://openideas.ideon.co/2011/rehabilitate-disruptive-footnotes)

</comment></comment><comment><USER13> I've got a question for my fellow long-form-reading HNers.

I check my phone for quick hits of information, but I hate reading long-form articles on it. Do you guys know of any "Send to Kindle" apps or bookmarklets for iPhone/iOS?

I know, I know: this is a hell of a first-world problem, but I'd like to read on glowing screens as little as possible.

<comment><USER14> If you are an Instapaper "subscriber", you get access to a "Send to Kindle immediately" bookmarklet.

I use it all the time (and vastly prefer it over the timed, once-a-day-at-most send-a-batch-of-stuff option).

<comment><USER13> This is exactly what I was asking for. Issues with B&A aside, I'll gladly pay $1/month for this.

</comment></comment></comment><comment><USER15> Do you still have to fetch the full page view before sending to Instapaper? That's the one thing that annoys me about this app/service. Readability does it all for you. I hate getting to the end of a piece in Instapaper and realizing there are more pages, but they weren't downloaded.

<comment><USER16> Yes, you do - in one of the Build and Analyze podcasts, Marco mentioned that he didn't support that behavior and probably wasn't going to anytime soon. I think it was in a discussion about Readability (which will do that), but I don't remember exactly which episode it was in.

<comment><USER15> This is a major FAIL on his part. Readability is one-click. Instapaper often requires several clicks to save. Fail. (Not to mention Readability pagination is light years better.)

<comment><USER17> _Spend years creating software that thousands of people love, have anonymous internet commenter cry "FAIL" (sic) from the rooftops because of minor missing feature._

The advantage of sending the content instead of the link is that you can save things that exist behind paywalls or that require logging in.

(Do you work for Readability? Literally every single comment you've ever made here mentions it.)

<comment><USER18> I work for Readability. No idea who goforth is. — I assume just a passionate user ;)

</comment></comment></comment></comment></comment><comment><USER19> Great update Marco! Did you work with a (graphic/interaction) designer on this update or did you do it all and maybe threw in some stock icons along the way?

<comment><USER20> It sounds like Iconfactory did the icons.

Source: <https://twitter.com/#!/qiansh/status/125938836562919424> (vetted by @Gedeon & @Iconfactory)

<comment><USER21> Marco also has a tweet referencing Dan Cederholm being associated with the icon (@simplebits)

<https://twitter.com/#!/marcoarment/status/125991945523822592>

Edit: Dan's post here: <http://simplebits.com/notebook/2011/10/17/instapaper4/>

</comment></comment></comment><comment><USER22> This is great, looking forward to installing it. However looking at the screenshots I can't help but wonder if something other than an ellipsis would be better for indicating footnotes, especially now the voice dictation in iOS has commandeered it.

<comment><USER23> Agreed, why not leave the original notation but show the footnote in the popover as show?

</comment></comment><comment><USER24> I've switched to Spool:

<https://getspool.com/>

Both text and video. First-class Android and iPhone support. Alas, no iPad support, but I don't use that much anymore.

<comment><USER25> spool is great but my only complaint is that it sometimes takes forever for an article to download. I dont want to wait half a hour/day to read an article I sent to spool but when it does download its really an amazing app!

<comment><USER26> hi, one of the makers of Spool here. Thanks for kicking the tires on it. Now that our coverage is up, we are optimizing for speed now, so those wait times will come down.

<comment><USER25> Hi Jubos,

I dont know how to contact you/message you on HN but there's one thing that has gotten a little annoying on spool; when you get to the bottom of the article - it brings up a big spool banner and this gets in the way of finishing up reading the article. I'm not sure if this is a bug or a feature but it's a little annoying :-/

</comment></comment></comment></comment><comment><USER27> Seeing those images side-by-side, the matte black with simple icons on the iPad looks clean and appealing and the glossy beveled borders on the iPhone look a bit garish. Also the type for the iPad interface is much more pleasing.

I don't think I would have noticed if they images weren't right next to each other.

<comment><USER28> I agree. The iPad version is flawless and I don't like the glossy borders on the iPhone. I can't believe I'm saying this but I would rather have the stitched leather look that Apple has been using on their apps recently.

</comment></comment><comment><USER29> While I love Instapaper for bringing me back to reading long-form articles, I personally moved to Readability a while back. It's $5 (minimum)/month, but it has a lot more polish, and I actually prefer the mobile app to Instapaper's iOS ones - it's nice knowing if I decide to leave the iOS ecosystem, I'll still have my articles, while Marco has refused to make official Instapaper clients for other mobile OS's (understandable, as he's only one man). I also like a handful of features in Readability's desktop web app that Instapaper lacks - scroll tracking, more options for how it looks, etc.

However, if I get an iPad, I may move back just for Instapaper's iPad app. Looks beautiful.

<comment><USER30> I prefer Readability as well. I can't justify the $5 per month subscription though. I'd happily pay $20 for a lifetime subscription, but I'm not sure what they're providing that is any different from Read it Later, Instapaper, etc. that justifies the monthly cost. I know they are attempting to pay back authors, but I don't understand why that must be a recurring cost. $5 per month is just a tad cheaper than what I pay for Netflix or prgmr.com, and I don't think it provides near the value of those two. Now when I get a Kindle Touch I might change my mind.

<comment><USER31> How wouldn't paying back authors be a recurring cost? It's quite simple actually; how do you divide your $20 between publishers? You can't (before you either die or stop reading that is). A monthly subscription on the other hand can be divided between the articles you've read that month.

</comment></comment></comment><comment><USER32> I kinda feel like I'm stuck using Instapaper regardless of how good it is. I use the official Twitter iOS app, which only has Instapaper or Read It Later support, meaning there's no way I can fully jump to the likes of Spool if I wanted to.

</comment><comment><USER33> Do this mean I can no longer move articles to the archive with one click?

It may sound a little trivial but I tend to remove the articles when I have read them and it gets annoying when I have to remove 15 (I tend to add a lot of articles).

<comment><USER34> Yes and (kind of) no. You get the additional popup on delete, but you can also multi-select and delete. That means (with your 15 article use case) like 1.1 clicks per article.

I understand the need to have archive and delete, and the confusion of two buttons, but I'd really rather have a setting. I Pinboard articles i want to keep archived, so I would always want to delete.

</comment></comment><comment><USER35> Of course, it looks beautiful, and I really want it. Is there any solution for Android? I've messed with some of the 3rd party apps but I haven't had any success.

<comment><USER36> I dont think any of the Android clients use the Instapaper API (<http://www.instapaper.com/api/full>) - they scrape the website, making it impossible to do things like sync reading postion across devices.

There is a decent Window Phone 7 client that uses the API - Stacks for Instapaper (<http://www.stacksforinstapaper.com/>) and one for HP/Palm webOS - Paper Mache (<http://ryanwatkins.net/software/papermache/> \- disclosure, its my app)

Interestingly the Terms of the Instapaper API prevent any integration with other "Read Later" apps, though Read It Later API terms do not seems to have this restriction.

"Apps must not include support for any other services that compete with or are substantially similar to Instapaper, unless the app uses only the "Add Bookmark" and/or "Verify Credentials" methods from this API. Instapaper reserves the right to decide whether another service or application is considered a competitor or substantially similar." (<http://www.instapaper.com/api/terms>)

<comment><USER37> I was looking for a place to plug "Paper Mache" here, but you got to it first!

</comment></comment></comment><comment><USER38> Fantastic update, as always. There aren't many developers who'd continue updating a $4.99 app this long... not to mention that its a universal app!

</comment><comment><USER39> I have an iPod touch and even though Safari now has a similar feature for free, I still want Instapaper. Because I use Chrome everywhere else.

</comment><comment><USER40> Is there a way to get the old list view back when using the iPad? I prefer the old view!

</comment><comment><USER41> Just another reason why I need to hurry and get an iPad, that app looks incredible!

</comment><comment><USER42> Only took four major releases to get proper text encoding support.</comment>


Containers are not VMs - <AUTHOR> https://blog.docker.com/2016/03/containers-are-not-vms/ <comment><USER2> The article portrays Docker containers as an alternative to binary packages that is typically mistaken for virtualization. If we take this train of thought, we end up with a system that is bloated, overengineered, brittle, and heavyweight. It's not to Docker's credit.

<comment><USER3> No, the problem of VM is not virtualization, but the notion of "machine". What Docker really does is to get rid of the full-blown machine/guest os, and focus on app. As such, you can run Docker image with Linux container for sure, you can also run it with hypervisor, which is surprisingly fast to boot too (<100ms).</comment></comment>


Five Easy Pieces of Online Identity - <AUTHOR> http://evhead.com/2011/04/five-easy-pieces-of-online-identity.html

<comment><USER2> His first three concepts already have names: authentication/authorization (he's conflated here), non-repudiability, and availability. The last two topics seem like applications and not properties of identity.

I think you could solve all of "2" - "5" given a workable solution for "1" --- that is to say, if everyone could agree on an Internetwide scalable authentication system, the other benefits of identity could be built organically around that kernel. But scalable authentication is a galactically complicated political problem involving virtually every single one of the largest technology companies in the world.

<comment><USER3> At the end of the post he did write _"From a technical perspective, authentication defines who someone is and authorization defines what they have permission to do. However, I didn't find that terminology useful for my purposes here."_

<comment><USER2> Was that there an hour ago? I'm surprised I missed it.

<comment><USER4> It was not there an hour ago - I would like to think that I was the impetus, as I saw it right when he posted and immediately replied: <https://twitter.com/#!/andrewpbrett/status/56503853184598016>

</comment></comment></comment></comment><comment><USER5> I'd add a sixth component, something like "Which role do you want to play?" jerf-the-HN-participant partially exists to lead a life sharded from jerf-the- family-member or jerf-the-employee. The oil-and-water metaphor for those roles I have is particularly apt, in that it doesn't particularly take effort for me to keep them separate because they actively avoid mixing naturally on their own, but I can't use(/refuse to use) a system like Facebook that insists on mixing them anyhow. The ability of the Internet to facilitate this is an important aspect it has and I don't want to see us give it up.

</comment><comment><USER6> "Every Internet service that has a concept of users has to deal with identity."

We have users and customers and we don't care who they are. Customers we care if their money is good.

The idea of validated internet identity for things outside of banking/finance and voting is a complete sham.

These companies screaming for identity know perfectly well they are lying to their customers. What they are really interested in is monitoring people and selling information about their habits to marketers.

</comment><comment><USER7> If anyone is interested in this stuff, there is a classic presentation on this subject Dick Hardt did back in 2005 that really digs into a lot of these different aspects of identity (albeit from an Open Source perspective): <http://www.identity20.com/media/OSCON2005/>

It also happens to use the brilliant Lessig Style of presentation, which is always fun to watch.

</comment><comment><USER8> The first thing I think of in reference to online "reputation" is forums.

Daniweb's a pretty good example - post count, up-vote count, solved threads and reputation points which determine a user's power to affect other people's reputations.

</comment><comment><USER9> CRAPR?

<comment><USER9> Why does he write that in BOLD at the end?</comment></comment>


Ask HN: What's a good webmail platform for linux? - <AUTHOR>

Prompted by this discussion: https://news.ycombinator.com/item?id=5591133<p>I am wondering what webmail system HNers would recommend for self-hosting on linux? <comment><USER2> I'd recommend a Debian Stable or Testing based Exim mailserver, coupled with vexim to provide mail service to multiple domains on one server. For AV, use either ClamAV or a commercial scanner.

I don't do spam filtering/greylisting on the server side, so I can't help you there.

</comment><comment><USER3> I've been itching to try out RoundCube (<http://roundcube.net/>) for a few years now but haven't found the copious free time to check it out. It looks really pretty and the feature list looks nice.

</comment><comment><USER4> Switched from SquirrelMail to RoundCube a few years ago and am happy with it. It's no Gmail interface, though. :-(</comment>


The hydrogen-powered generator that was almost a home-shopping hit - <AUTHOR> https://www.engadget.com/2016/11/24/home-shopping-network-ihod-energypod-generator/ <comment><USER2> Nice product. I'm curious to know how the cost of their catalyst compares with other major energy sources in price /joules. The website crucially excludes how long the fuel pucks last at peak power output. They may not have worked that out yet; they do say (in the pdf) they are planing on shipping packs of different energy densities.

Products like this are what fascinates me about innovation and entrepreneurship. If the economics of the product are right, or could improve through iteration - this could be more disruptive than the automobile. Cool beans.</comment>


Analyst sees costly Apple items out of reach - <AUTHOR> http://www.sfgate.com/cgi-bin/article.cgi?f=/c/a/2008/10/22/BU7B13LJ6C.DTL <comment><USER2> 40 % of Apple's revenue is now coming from the iPhone, and iPod revenue is still increasing but not by leaps and bounds. A short-sighted analysis by someone who makes a decision by price alone.

1) Brand loyalty - Mac users consistently keep buying macs 2) Apple is no longer just a computer company

</comment><comment><USER3> Don't listen to analysts.</comment>


Should Airlines Remove Seatback Screens? - <AUTHOR> https://www.bloomberg.com/news/articles/2019-10-13/sunday-strategist-should-airlines-remove-seatback-screens <comment><USER2> For my feeling, per-passanger screens are relatively new. My first flight with such a plane was maybe 10yrs ago. If the screen space would become free for mounting own tablets, this would benefit most passengers.

By the way, the usual screens are very cheap. The retail price tag would be well below $300. This is a tiny fraction of the mentioned 10T$ per device.

I rather doubt that satellite internet can allow 300 people on a plane to stream their high definition videos from the internet -- technically, not even talking about the price tag. A solution (which is already adopted by some transportation services) is to offer access to some in-flight media server.

</comment><comment><USER3> I would be fine with this if 1. we had better charging ports in the seats, 2. I could strap my iPad to the headrest in front of me.</comment>


What useful JavaScript frameworks still haven't been built? - <AUTHOR>

<comment><USER2> An Api to send things to the moon and back

</comment><comment><USER3> react for colaborative editing</comment>


Snowden's flight from Moscow to Havana passes over US airspace.  - <AUTHOR> https://twitter.com/williamsjon/status/348779748207505408 <comment><USER2> On June 20th, the flight did not pass through US territory: [http://flightaware.com/live/flight/AFL150/history/20130620/1...](http://flightaware.com/live/flight/AFL150/history/20130620/1005Z/UUEE/MUHA)

Perhaps strings can be pulled so it takes the same route again.

<comment><USER3> Small trivia: that path goes close to the Azores where the USAF has an airbase.

<comment><USER2> I'm sure this will not be a matter to be resolved by fighter jets. This is a regular commercial jet and if asked to land by air traffic control, it will land instead of going rogue. So as long as it stays off actual US airspace, it should be fine.

<comment><USER3> I wasn't implying they would shot his plane. I could imagine the USAF "asking" the pilot to land on the airbase but I don't think any of these things will happen to him.

<comment><USER4> The captain is not going to comply with such a request. An unscheduled landing is, if not illegal in a relevant jurisdiction, at least unnecessarily risky.

<comment><USER5> It has happened before. I think one of the original digital cash (e-gold, digicash) executives was arrested this way but I can't find the story now.

</comment></comment></comment></comment></comment></comment><comment><USER6> Here is the map of SU150 (Sheremetyevo - Jose Marti) flight path on 22nd June:

[http://flightaware.com/live/flight/AFL150/history/20130622/1...](http://flightaware.com/live/flight/AFL150/history/20130622/1005Z/UUEE/MUHA)

</comment><comment><USER7> Can someone explain why Snowden is going this way instead of going over the Pacific to Venezuela?

<comment><USER8> Plus why didn't they charter a plane? I'm sure Russia has quite a few rusty Tupolevs standing around and pilots that can probably even fly blindfolded the route to Havana.

But maybe the idea is some form of human-shield and protection against unhappy "accidents" by relying on regular passenger flights.

<comment><USER9> This is a smart move. There is no way the US will use force against a passenger plane just to get Snowden, so the pilot can safely ignore any US demands and continue on to Havana regardless of air space and threats, though it will take guts. Perhaps there will be a last minute shift change and a GRU pilot will end up in the cockpit.

</comment></comment></comment><comment><USER10> This strikes me as a non-issue. This case is far too high profile for the US to risk the diplomatic and PR fallout from forcing or otherwise coercing a commercial airliner to land unexpectedly.

<comment><USER11> And it's a Russian airline. Should there be a diplomatic incident, Russia has the means to carry out diplomacy by other means. A flight from Moscow was not chosen by lowest cost on Travelocity. Everyone is wearing big boy pants.</comment></comment>


Ask HN: Does anyone use the Firebird RDMS? - vanilla-almond I've never seen a discussion about it on Hacker News. And yet is has a history that stretches all the way back to 2000.
If you're unfamiliar with Firebird, it's an open-source, cross-platform, client/server Relational Database Management System (RDMS). A brief intro here: https://www.firebirdnews.org/docs/fb2min.html
How is it that it's so little known among developers?
If you use it or have used it in the past, what is your opinion of it? <comment><AUTHOR> Certainly. I've successfully deployed it to over 500 SMBs where it runs on- site completely unattended on desktop grade machines. That's where it really shines. On my own server I would probably go with SQLite or PostgreSQL, but in this case I specifically picked Firebird for its ultra-low maintenance, resiliency against corruption by system crashes, foolproof* way of moving over data (single file copy), and more than good enough feature set while retaining a low footprint. Works wonders.

Last October I went to the Firebird Conference in Berlin. It's true that the community is fairly small and does not attract a lot of new blood. There are however some very knowledgeable people there who've been around often since day 1. From what I've heard, it's hard to say much about the number of deployments, because it just keeps working, and (not having a reason to) users don't reach out. Most came from InterBase, decades ago. Supposedly software provided by the Russian tax office uses Firebird Embedded...? That adds up rather quickly already. It's unfortunate that nowadays few consider it. Desktop software taking the backseat and the abundance of alternatives play a role in that. The slow development pace is good for stability, but otherwise doesn't help either.

*I flipped a single bit in my Firebird distribution to have the server process set an exclusive read lock in addition to its exclusive write lock, so that an open database can't be copied—the only thing that could go wrong.

</comment><comment><USER2> I've used it - in production, released at a number of sites. It works as well as any other (have been an Oracle consultant for many years).

For smaller sites with hundreds of users it does everything you could ask. It's very easy to manage - a single DB file. It has a great admin tool available - IB Expert, as good as TOAD in most ways.

Probably hits some limits if you're looking at very high transaction loads (>1000TPS), or very large (multi TB) but really for every day use you can't do better.

It used to be owned by Borland, I believe, but open source now. It has strong ties to the Delphi community and is very easy to use from there.

Edit: And yes like you I don't understand why its not well known. Probably a victim of Borland anti-marketing

</comment><comment><USER3> I remember using it a bit in my Delphi days ... (nostalgic face) It just worked (for smallish projects) and was quite nice, though nothing ground- breaking.

> How is it that it's so little known among developers?

Both Interbase and, by extension, Firebird were part of the Borland's and, later, Embarcadero's product ecosystem (especially, Delphi and C++ Builder) and, thus, closely tied to relevant developer community, as chadcmulligan mentioned. As the overall ecosystem declined, so did the popularity and use of Interbase and Firebird.

</comment><comment><USER4> :(</comment>


Ask HN: Any web app suggestions for project management? - <AUTHOR>

We have a split team over the globe. So we needed to manage tasks/ documents etc. We started with google groups for discussion. Currently i was trying out Google sites for the same.<p>I would like to start with something free, since the team is small enough(6-7) right now. Any suggestions for something better? <comment><USER2> Give Redmine (<http://www.redmine.org/>) a look. While it doesn't have a great website, after installing it on my Mac, it blew me away in terms of features and functionality. It's very similar to Unfuddle.com (or maybe I have it backwards).

<comment><USER3> We switched to Redmine from Trac and so far I'm pretty impressed. So yeah, give Redmine a try.

<comment><USER4> Another shout for redmine. It is mostly oriented around issue management but there are tons of plugins which add functionality

</comment></comment></comment><comment><USER5> Pivotal Tracker (<http://www.pivotaltracker.com/>)

Disclaimer: I work for them.

<comment><USER2> I like what I see. Can I download it and install it on a local machine? For personal projects it seems fine to go with your hosted solution, but I'd like to introduce it to our company. However they won't let proprietary info be hosted somewhere else.

<comment><USER6> From their 'Help' section:

\---

Is it possible to host my own copy of Tracker?

We do not offer a self-installed version of Tracker. However, a dedicated instance may be possible for organizations with a large number of users. Please email us at firstname.lastname@example.com for details and pricing information.

\---

I really, really like PT for agile or semi-agile or aspiring-agile teams.

</comment></comment></comment><comment><USER7> I've been working with ClockingIT, the interface is good and easy to understand, you can use the hosted version or setup on your own server. <http://www.clockingit.com> disclaimer : I don't work for them :) it's a full opensource , created with RoR

</comment><comment><USER8> I'm not sure if it fits the bill, but check out the Trac Project at <http://trac.edgewall.org/>.

It's free, opensource and web-based.

</comment><comment><USER9> Project management is a fairly broad domain and includes a bunch of different tool types. If you're using sites, you might be interested in pbworks (was pbwiki) or 37signals basecamp. Pivotal tracker provides a very focused (and thus intentionally restrictive) workflow that expresses their agile development philosophy. Similarly, thoughtworks mingle is shaped for their flavor of development. Personally, I think that managing documents and tasks are two very different domains unless the documents are directly linked to a task.

\--- There's also the issue of how tasks are prioritized and how new ideas are merged into the work queue. Stormweight is a product in private beta that allows your team to merge their preferences democratically for brainstorming and team decisionmaking. Email email@example.com if you're interested in the beta. [Disclaimer: I'm a co-founder and chief engineer at Stormweight]

</comment><comment><USER10> I'm currently using the free version of Zoho Projects. Works well for our purposes: <http://projects.zoho.com/>

</comment><comment><USER11> Since you already have your team on gmail I would suggest this:

1\. Add Tasks from Google Labs to everyone's gmail account

2\. Add same to Google Sites (you can insert gadgets into pages, just make sure you add Google Labs Tasks and not other task apps also from google)

What I really like about this setup is the ability to create tasks from emails with 1 click, so you can keep track of the whole conversation from the individual task itself.

It's not the prettiest setup but it does have the ability to share conversations, create multiple projects and structure tasks hierarchically - which to me is all you need. And hey, it's free and builds on what you already have.

</comment><comment><USER12> Rally Dev Community version <http://www.rallydev.com> is pretty good. We used it with a team of 6 and it worked out great.

</comment><comment><USER13> If your team knows Emacs, you may want to try org-mode (sync-ed by, say, git). I am not kidding. The notes-centric approach, instead of the usual task- centric approach, will completely change the way you work and collaborate for the better.

I can't stress this enough.

<comment><AUTHOR> Sounds intriguing. Although most of my team is not emacs based, but i personally will take a look.

</comment></comment><comment><USER14> 37 Signals' products: <http://www.37signals.com/> But i'm not sure if free versions support 6-7 people.

</comment><comment><USER15> Redmine/Mediawiki etc + budget web host</comment>


Facebook Chat supports Jabber now - <AUTHOR> http://developers.facebook.com/news.php?blog=1&story=361

<comment><USER2> iChat: Add new account in Preferences, select type Jabber, enter username "<username>@chat.facebook.com" (where username is selected in Facebook settings, and you need to logout from Facebook after that change). For password use Facebook password.

<comment><USER3> BitlBee:

      account add jabber firstname.lastname@example.com FACEBOOK_PASS
      account list
      account add 2 (or whatever number the above list shows is Facebook)
      # you'll need to do a /whois on your friends and rename them:
      rename u393222111 John
      rename u134322433 Bob

<comment><USER4> Thank you very much.

The renaming is fairly annoying, can anyone think of a way to auto-name users?

<comment><USER3> A script to do /whois the first time, and rename the nick to the shown username would work.

Here's one: <http://a.ngus.net/bitlbee_rename.pl>

</comment></comment></comment></comment><comment><USER5> So, from what I understand, this is a way for clients like Adium to connect to Facebook chat, but it isn't a way for things like Google Talk to interact with Facebook Chat. That's disappointing. It would have been nice if they announced that they're trying to get interoperability with other networks going.

<comment><USER6> Most people who use FB chat are probably going through the FB site. Dealing with authorization/privacy/spam/abuse for federated users would be a pretty difficult UI/support challenge since it's not integrated with FB's existing friend/profile privacy concepts.

<comment><USER5> It's not that difficult. GMail does it. So, email@example.com requests to add firstname.lastname@example.com to its contact list. In the Facebook web interface, it comes up in the list of groups that you are requested to join, friends to confirm, etc. Privacy settings for vCard stuff (like image) can be the same as they are for Facebook - and Facbeook can use the Jabber ID of the other party (email@example.com) to see what their Facbeook account is for that or just give the public information (most people have a public profile picture).

SPAM and abuse isn't that hard. Remove the person from your contacts. Done. They can't contact you any more. Really, it's the same as if one of your Facbeook friends was creating SPAM or abuse.

Basically, it's just "friending" people by Jabber ID rather than by Facebook user id in a "chat contact" status.

There are technical challenges to federation and it _did_ take Google a while to implement it. However, the UI, SPAM, and authorization parts don't seem that challenging. And it would be nice if Facebook opened up a bit. And Facebook might be working on this, but I don't think it's a UI issue. In the long run, it will come down to whether Facebook wants to be closed or open and that's a policy decision.

</comment></comment></comment><comment><USER7> Jabber support for FB Chat is nice, but failing to support SSL/TLS is not really acceptable...

<comment><USER8> When would you use FB chat and care about the privacy of the communication?

<comment><USER9> This includes the login I guess...

<comment><USER10> can someone confirm that login info is sent in the clear? that's pretty terrible.

<comment><USER11> They claim they're using DIGEST-MD5, so not quite plaintext, but a broken hash algorithm

<http://www.facebook.com/help/?faq=16742>

<http://www.facebook.com/help/?faq=16741>

</comment></comment></comment></comment></comment><comment><USER12> I thought it would be a more obvious question, but how do you think this will affect the other big messenger clients/protocols? MSN/YIM/AIM/GTalk ?

I already noticed a trend in which a large portion of my friends will use facebook chat now and not even bother to login to MSN Messenger (which is the most popular client in my geographical area).

<comment><USER13> The massive benefit for me is that all my friends are already on Facebook. It's effectively got automatic roster management, which is a killer feature since I don't normally get round to adding people to MSN (which is also the most popular client in my geographical area).

I reckon that because Facebook has such a large number of users already, this has the potential to kill the other IM networks. Maybe it's not so good for properly federated XMPP, though, since this also presumably means that Facebook have no real incentive to implement it.

</comment></comment><comment><USER14> Kudos. Now will they follow through?

I'll be impressed if they indicate they're working towards full server-to- server as Google has done with their XMPP implementation.

<comment><USER15> see <http://news.ycombinator.com/item?id=1115963>

</comment></comment><comment><USER16> It's annoying that once software products become extremely popular, the developers/companies often start adding features in an attempt to be everything for everyone. This in turn makes the software unusable, because the developers are too overloaded to properly maintain their once core business. Eventually it gets replaced by a new product, and the cycle repeats itself.

<comment><USER17> I think it was jwz who said something like "every program expands until it can read email" (I'm sure I'm butchering it).

<comment><USER18> Not butchering it at all, really: <http://www.catb.org/~esr/jargon/html/Z/Zawinskis-Law.html>

"Every program attempts to expand until it can read mail. Those programs which cannot so expand are replaced by ones which can." -- Jamie Zawinski

<comment><USER19> So is an update needed? s/read mail/\0 and\/or chat/

</comment></comment></comment></comment><comment><USER20> The Pidgin instructions are incorrect. The "Local Alias" field should be set to your name, not "Facebook Chat", as this field controls what name is printed next to your messages in your local chat window.

Unless your name is actually "Facebook Chat", of course.

<comment><USER21> What instructions? I couldn't find any, and so I can't authenticate. In particular, I have no idea what the correct server would be.

<comment><USER13> Quick answer: use email@example.com without SSL/TLS. If you don't have a userid you need to create one and log out of Facebook and back in again first.

</comment></comment></comment><comment><USER22> My friend lists correspond to privacy settings, not human-friendly groups (just photos, nothing, professional contacts). They should divorce friend lists from chat groups.

<comment><USER23> I'm pretty sure that Group:Person is a many-to-many relationship.

I have friends in multiple groups.

</comment></comment><comment><USER24> wow. Facebook will now know when, where and how long you are online.

<comment><USER25> They already do, and have for years. Have Facebook open in a tab anywhere? They know.

</comment></comment><comment><USER9> Using it seems to force the on-site chat to be enabled.</comment>


Results of the python 2.x and 3.x use survey, 2014 edition - <AUTHOR> http://blog.frite-camembert.net/python-survey-2014.html

<comment><AUTHOR> More elegant Google Form quick recap: [https://docs.google.com/forms/d/1DqxkNi4GvyTCu54usSdE1DjW29z...](https://docs.google.com/forms/d/1DqxkNi4GvyTCu54usSdE1DjW29zw1tc52iMeH3z4heg/viewanalytics)

Overall people started writing more python 3: +15 points in "I ever wrote python 3 code", +10 points in "I write more python 3 than 2". Transition is still ongoing and I hope a tipping point will be soon be attained.

Users definitely seem to want to switch to python 3, but dependencies keep them with 2.7 (I weep for the few ones still on 2.5).

edit: google results were inaccessible, now fixed.

</comment><comment><USER2> The porting question could possibly be explained by people just not bothering to port older stuff. I've got production code running in Python 2, and it's fine where it is. New stuff is in 3, and if I have to rework the old stuff at some point it'll probably get an upgrade.

</comment><comment><USER3> I've been working on a project that relies on a library which is only available in python 3, it is at a point where I want to pretty up the interface.

I'm wondering if wxpython phoenix is stable enough to warrant the time and effort, or if I should hold off until there is a non-dev release?

<comment><USER4> Why not PyQt ?

<comment><USER5> Unfortunately this was my first thought as well. Although wxwidgets works on several platforms, it manages to look and feel alien on almost every. If you care about usability, I believe your application should be consistent with the rest on the target platform(s). Wxwidgets based applications are simply failures especially on Windows.

QT fares significantly better on the usability. Java's look and feel system works as well. You could also separate the V properly, and for instance use WinAPI wrapper on Windows platform. Just please, please let wxwidgets die already :(

</comment></comment></comment><comment><USER6> They asked "When starting a personal project, which Python version do you use?" Strangely, they did not ask "When starting a production project, which Python version do you use?"

<comment><USER7> To be fair, you don't always have a choice when starting a production project.

<comment><USER2> That doesn't matter though. Choice or not, what do people use?</comment></comment></comment>


Online Outliners - The Best of What's out There - <AUTHOR> http://www.proproductivity.com/2008/online-outliners/

<comment><USER2> outliners, rss and no mention of Dave Winer

\- <http://www.outliners.com/>

\- <http://davewiner.userland.com/outlinersProgramming>

\- <http://itc.conversationsnetwork.org/shows/detail260.html>

<comment><AUTHOR> His isn't an online outliner though is it?

<comment><USER2> _"... His isn't an online outliner though is it? ..."_

No.

      My main app only runs on Windows
      and Mac. Can't do it with Linux.
      Shame, I know. [1]

there was a comment on why Winer recently purchased a Eee100 with MS Windows and the answer was because his tools are Win/Mac. The point I was making is Outliners have a long history, Winer was there early. The specification is more important than the tool ~ <http://docs.opml.org/>

[1] <http://friendfeed.com/e/fff3a72d-e91d-eae5-5a82-d5a8fc0c8996></comment></comment></comment>


Revisiting the Business Card Raytracer - <AUTHOR> https://fabiensanglard.net/revisiting_the_businesscard_raytracer/index.html <comment><USER2> > Opening the binary with Binary Ninja revealed that clang had already managed > to leverage the SSE registers.

X86-64 uses SSE registers for all floating point operations. I'm not sure that the author realized that they were looking at an -O0 binary. -O0 does not do vectorization (or anything else for that matter).

<comment><USER3> Looking at it on Godbolt, it doesn't really leverage SSE on -O3, either. You can get a reasonable grasp of whether it's using SSE effectively or not just by looking at the instruction names.

mulss: multiplication of a single single-precision floating point value.

mulsd: multiplication of a single double-precision floating point value.

mulps: multiplication of a packed group of single-precision floating point values.

mulpd: multiplication of a packed group of double-precision floating point values.

If you're mostly seeing -ps suffixes only on moves and shuffles, you're looking at code that is not being vectorized. (And, actually, if you're seeing a lot of shuffles, that's also a good sign its not well-vectorized.)

Incidentally, if you're seeing unexpected -sd suffixes, those are often due to unintended conversions between float and double. They can have a noticeable effect on performance, especially if you end up calling the double versions of math functions (as they often use iterative algorithms that need more iterations to achieve double-precision).

I'm linking GCC output, because it's simpler to follow, but you see more or less the same struggle with Clang.

[https://godbolt.org/z/XtVqsU](https://godbolt.org/z/XtVqsU)

<comment><USER4> This post is really topical for me. I spent hours yesterday trying to write explicit SIMD code[0] for my the vector dot product in my raytracer and all I managed to do was slow the code down about 20-30%.

The code generated by Rust from the naive solution uses ss instructions mostly whereas my two tries using `mm_dp_ps` and `mm_mul_ps` and `mm_hadd_ps` where both significantly slower even though it results in fewer instructions. I suspect that the issue is that for a single dot product the overhead of loading in and out of mm128 registers is more cost than it's worth.

Naive Rust version output

        .cfi_startproc
        pushq %rbp
        .cfi_def_cfa_offset 16
        .cfi_offset %rbp, -16
        movq  %rsp, %rbp
        .cfi_def_cfa_register %rbp
        vmovss  (%rdi), %xmm0
        vmulss  (%rsi), %xmm0, %xmm0
        vmovsd  4(%rdi), %xmm1
        vmovsd  4(%rsi), %xmm2
        vmulps  %xmm2, %xmm1, %xmm1
        vaddss  %xmm1, %xmm0, %xmm0
        vmovshdup %xmm1, %xmm1
        vaddss  %xmm1, %xmm0, %xmm0
        popq  %rbp
        retq

My handwritten version with `mm_mul_ps` and `mm_hadd_ps`

        .cfi_startproc
        pushq %rbp
        .cfi_def_cfa_offset 16
        .cfi_offset %rbp, -16
        movq  %rsp, %rbp
        .cfi_def_cfa_register %rbp
        vmovaps (%rdi), %xmm0
        vmulps  (%rsi), %xmm0, %xmm0
        vhaddps %xmm0, %xmm0, %xmm0
        vhaddps %xmm0, %xmm0, %xmm0
        popq  %rbp
        retq

Intuatively it feels like my version should be faster but it isn't. In this code I changed the the struct from 3 f32 components to an array with 4 f32 elements to avoid having to create the array during computation itself, the code also requires specific alignment not to segfault which I guess might also affected performance.

0: [https://github.com/k0nserv/rusttracer/commits/SIMD- mm256-dp-...](https://github.com/k0nserv/rusttracer/commits/SIMD-mm256-dp-ps)

<comment><USER3> I'm actually rather bad at this, but my understanding is that the horizontal operations are relatively slow. The easiest way to get throughput out of SIMD is to have a structure representing 4 points, with a vec4 of your X values, a vec4 of your Y values, and a vec4 of your Z values. Then you can do 4 dot products easily and efficiently, using only a handful of vertical packed instructions. (If figuring out how to effectively use a structure like that sounds difficult and annoying, that's because it is.)

<comment><USER4> Yeah that was my conclusion too. I don't think I have any cases where the need to perform the dot product between multuple paris of vectors arise however, at least not anywhere in the hot loop where it would help. Raytracers tend to use a lot of dot products followed by some checks then another dot product but there's a strictly sequential process in these algorithms.

<comment><USER5> I suspect that most people attempting to vectorize their ray tracer try the straightforward horizontal approach here and discover that it's not really any faster. I certainly did when I first started in this area.

The key to the vertical, structure-of-arrays approach is to move to a more data-flow style approach. Instead of generating a single ray at a time from your camera code you can generate them in small batches corresponding to a rectangle on the screen. When I was in grad school we'd call these ray packets. We'd also do things like organize them into little 2x2 pixel "packlets" within the packet to take advantage of SSE or AltiVec. (This tends to work great with coherent pinhole camera rays, and shadow rays towards a common light source, but not so well with path-traced indirect rays which quickly become incoherent.)

Likewise, don't go all the way down to single primitives in the leaves of your acceleration structure. Instead, try to group them into small blocks of the same primitive type that are clustered together spatially. For example, you might have triangle mesh intersector code that has a BVH specialized for large numbers of pure triangles (generic programming can help here, e.g., BVH<triangle> for meshes and BVH<sphere> for point clouds). Since the leaves may have different numbers of primitives, a typical approach would be to pack all the primitives into a single flat array and then have your BVH leaves just give you the indices of the range within the array. (The nice thing is that this typically also shrinks your acceleration structures since you have fewer nodes due to the leaves not being so fine-grained.)

If you're curious to see some vectorized ray/triangle intersection code that was fairly state-of-the-art in its day, I have an old paper[0] on the topic. I'd also suggest having a look at Intel's Embree[1], especially the early publications. The library is open source (Apache licensed), well organized, and not too large.

[0] [https://www.cs.utah.edu/~aek/research/triangle.pdf](https://www.cs.utah.edu/~aek/research/triangle.pdf)

[1] [https://www.embree.org/](https://www.embree.org/)

</comment></comment></comment></comment></comment></comment><comment><USER6> Is there a mistake in the original code on the right hand side? I get:

      card.cpp:16:2: error: 'g' was not declared in this scope
         16 | <g;p)t=p,n=v(0,0,1),m=1;for(i k=19;k--;)
            |  ^

Edit: Yes there is. The '<g;' seems like it should have been the single character '<', perhaps a corrupted HTML escape.

<comment><USER5> (Original author of this code[0] here.) Yes, that looks like a corrupted copy. The line should be:

        <p)t=p,n=v(0,0,1),m=1;for(i k=19;k--;)

[0] [http://www.cs.utah.edu/~aek/code/card.cpp](http://www.cs.utah.edu/~aek/code/card.cpp)

</comment></comment><comment><USER7> Well there goes my weekend. :)

I also tried to optimise the code, and got great speed increases with just constexpr the vector methods and could quickly see that rand was problematic and then Fabien releases this post with nvcc that are another level. Really great blog post!

</comment><comment><USER8> A Ray-Tracer in 7 Lines of K: [http://nsl.com/k/ray/ray.k](http://nsl.com/k/ray/ray.k)

<comment> jagged-chisel 7? Just remove those comments and the last few newlines and it'll be one line.

I don't know K, but it looks like it uses semicolons to end statements. It's "cheating" on line count to compress statements by just removing \n.

After all, how many "lines" are in the business card raytracer? 4.

</comment></comment><comment><USER9> i love what fabien is doing with his website!

also been experimenting with pure html with an itsy-bitsy amount of css. for months now i wondered how to display code without involving javascript.

that textarea is so perfect! and i bet you when you copy and paste into word or your todo list application they won't even try to be "smart" about knowing what "rich text" is...

that's very cool.

<comment><USER10> i am glad that there is a small village of indomitable developers holding out against tens of megabytes of reactive functional progress modern javascript frameworks.

thank you

<comment><USER11> There is a place for both.

<comment><USER10> It's not so much that there's a place for both rather than both necessarily exist as two points in the same space.

But the reality is that more websites than not these days will send you many megabytes of JS, mainly for the purpose of tracking you and extracting money/time from you, under the guise of "user experience".

So when I see some of those rare people who still actually care about quality, speed, performance, accessibility, etc I make sure to appreciate their work.

</comment></comment></comment></comment><comment><USER12> This was really fun to read, thanks fsanglard.

> This is correlated with the warning nvcc issued. Because the raytracer uses > recursion, it uses a lot of stacks. So much actually that the SM cannot keep > more than a few alive.

Stack frame size / "local memory" size doesn't actually directly limit occupancy. There's a list of the limiters here: [https://docs.nvidia.com/gameworks/content/developertools/des...](https://docs.nvidia.com/gameworks/content/developertools/desktop/analysis/report/cudaexperiments/kernellevel/achievedoccupancy.htm). I'm not sure why the achieved occupancy went up after removing the recursion, but I'd guess it was something like the compiler was able to reduce register usage.

</comment><comment><USER13> Almost into passable frame rate territory. Next version could be business card VR:)

</comment><comment><USER14> 101,000ms to 150ms is a phenomenal speedup. Props

<comment><USER15> To be fair, the thing he started with was totally unreadable and fits on a business card and the thing he ended up with was readable, but didn't fit. It isn't apples-to-apples.

<comment><USER16> The original is 1,287 bytes after removing comments and line endings where possible. After just a bit of search-and-replace to shrink variable names, I got the new one down to 2,373 bytes including the same error checking and output at the end. So 1.8 business cards, which is not too bad.

And no I haven't tried to compile it. [https://pastebin.com/LDRd6U4e](https://pastebin.com/LDRd6U4e)

<comment><USER17> Hmm, some further improvements:

      typedef float F;typedef int I;
      // saves 2 lines (but zero bytes)

      #define R return
      // OR
      #define O(S,A,R) operator S(A){return R;}

      #define E(F){E_((F||cudaPeekAtLastError)(),__FILE__,__LINE__);}

and so on - although you'd probably have to make semantic chages to get onto a single card. (Or use a smaller font, but that's presumably cheating.)

<comment><USER16> I feel like the self-timing and error-checking is unnecessary, and you can at least fit it on the front + back of a business card with enough room left for your name and an email address.

</comment></comment></comment></comment></comment><comment><USER18> I wonder if the tool-chain would be better under Linux? It is kind if funny the way Windows development has always been a hassle. Mscvars.bat and such has been there for at least 20 years.

</comment><comment><USER19> Nice work on the GPU programming, and the multicore before that, but I'm mystified why going from -O0 to -O3 is named an "optimisation". All respect for Fabien, but running code that's supposed to run faster than a snail (and if you're not debugging and require -O0 for reasonable output) implies -O2 or -O3. (In practice, -O3 often doesn't give much performance over -O2, despite increasing compile times.)

The initial time is not 101.8 seconds, it's 11.6 seconds.

<comment><USER3> You could also add -ffast-math, which loosens the rules for floating point optimizations. For example, it would allow the compiler to turn floating point divisions into multiplications by an inverse, and to group operations more efficiently even if doing so would slightly affect rounding. It also rounds denormal numbers down to zero, which can greatly improve performance on a lot of hardware.

-march=native may also be useful, as it would allow the compiler to use newer CPU instructions, and tune the generated code to your hardware. That would make the program less portable, but it's not like CUDA is portable either.

My machine matches those numbers surprisingly closely. With -O0 it took 89.6s. With -O3, it took 11.7s. With -Ofast (which combines -O3 and -ffast-math), it took 10.6s. With -Ofast -march=native, it took 8.9s. I would expect those gains to extrapolate to the multi-threaded version, maybe pushing it down to 1 second without any further work. (Note: I'm using GCC on Ubuntu 18.04 with a Haswell i7. Your mileage may vary.)

<comment><USER20> Offtopic, but I think that languages should have special float types that trigger the use of fast math. That way, a programmer can better control which parts of a program are done with approximate floating point operations.

<comment><USER3> One of the reasons why I think Zig looks appealing is that you can set the policy for these sorts of things on a per-block basis: [https://ziglang.org/documentation/master/#setFloatMode](https://ziglang.org/documentation/master/#setFloatMode)

<comment><USER20> Imho that's too fine-grained. Usually you determine which variables don't need strict accuracy rather than which code, so that's better controlled through types. Also, it's easy to limit approximations to code blocks by casting to/from approximate types around a code block so you can still have fine grained control.

</comment></comment></comment></comment></comment><comment><USER21> If you increase resolution you can put more code on business card :P

<comment><USER22> If you make your business cards out of silicon wafer I can get you 10nm resolution.</comment></comment>


Andreessen Horowitz and Collab Fund Add to Balanced's $3.4M Seed Round - <AUTHOR> http://blog.balancedpayments.com/balanced-fundraising-raises-investment-andreessen-horowitz-collaborative-fund/ <comment><USER2> Andreessen Horowitz is an investor in Stripe and also does not invest in companies that are competing with one another. Does that mean that Balanced and Stripe are not competitors?

<comment><USER3> Yeah, what does it mean that it's "via general partner Jeff Jordan"? That makes it sound like it's somehow not an "official" Andreessen Horowitz investment but rather a personal investment from Jeff. Will Balanced end up on <http://a16z.com/portfolio/>?

<comment><USER2> That likely means that Jeff Jordan was the partner that led the investment from a16z. _Usually_ you're only directly interacting with one partner at a given firm.

<comment><USER3> Ah, okay. My ignorance, sorry. :)

</comment></comment></comment></comment><comment><USER4> Why is "who funded us" such a prominent theme these days with funding announcements from companies? Especially in _this_ announcement? Back in the day, investment banks put up tombstones in the WSJ (for the big deals) and a minor blip went out on the news wires that funding was obtained by such-and- such company. Now it is "Hey! Look at us! We got funding! And one of the players was Andreessen!!!" .. or xyzxyz!

I realize Andreessen Horowitz is a prominent VC player, but I'm sure he's had his share of failures judging by the sheer number of investments he seems to play in. Those like him with a lot of capital are now engaging in "spray and pray" mentality. A few home runs might have made him insanely wealthy, but I question why all the sudden his name on your startup is so important.

And don't forget the old adage: Past performance is no guarantee of future results.

<comment><USER5> I think of it like when Warren Buffet or George Soros buys a new stock. It's not that they can't be wrong - it's that people who are really, really good at this thinks it is a good investment.

</comment></comment><comment><USER6> We implemented Balanced into our app yesterday. We allotted a week to integrate payments; with Balanced, it took a mere three hours. Even better, we were able to play with payments with the dummy dashboard.

Really impressed with these guys so far.

</comment><comment><USER7> Congrats guys. How about tht international[1] now please. :)

[1] <https://github.com/balanced/balanced-api/issues/23>

</comment><comment><USER8> I'm confused. I thought seed rounds were small amounts en route to angel investments, which might lead to a Series A.

</comment><comment><USER9> I am glad to see a real payment solutions for marketplaces getting the nod from a16z. Congrats to Jareau, Mahmoud, and team!</comment>


Unauthorized access detected in Docker Hub database - <AUTHOR> Just received an email from Docker Hub support:
On Thursday, April 25th, 2019, we discovered unauthorized access to a single Hub database storing a subset of non-financial user data. Upon discovery, we acted quickly to intervene and secure the site.
We want to update you on what we've learned from our ongoing investigation, including which Hub accounts are impacted, and what actions users should take.
Here is what we've learned:
During a brief period of unauthorized access to a Docker Hub database, sensitive data from approximately 190,000 accounts may have been exposed (less than 5% of Hub users). Data includes usernames and hashed passwords for a small percentage of these users, as well as Github and Bitbucket tokens for Docker autobuilds.
Actions to Take:
We are asking users to change their password on Docker Hub and any other accounts that shared this password. For users with autobuilds that may have been impacted, we have revoked GitHub tokens and access keys, and ask that you reconnect to your repositories and check security logs to see if any unexpected actions have taken place. You may view security actions on your GitHub or BitBucket accounts to see if any unexpected access has occurred over the past 24 hours -see https://help.github.com/en/articles/reviewing-your-security-log and https://bitbucket.org/blog/new-audit-logs-give-you-the-who-what-when-and-where This may affect your ongoing builds from our Automated build service. You may need to unlink and then relink your Github and Bitbucket source provider as described in https://docs.docker.com/docker-hub/builds/link-source/ We are enhancing our overall security processes and reviewing our policies. Additional monitoring tools are now in place.
Our investigation is still ongoing, and we will share more information as it becomes available.
Thank you,
Kent <comment><USER2> Reading between the lines of their status history is also interesting: [https://status.docker.com/pages/history/533c6539221ae15e3f00...](https://status.docker.com/pages/history/533c6539221ae15e3f000031)

Their message seems to be missing the "which Hub accounts are impacted" info unless I missed that, so not sure if they are only sending the message to the folks impacted or what.

<comment><USER3> Kind of OT, status page works with JS only :D

</comment></comment><comment><USER4> I got this too.</comment>


China used rockets to stop rain during the olympics - <AUTHOR> http://www.inquisitr.com/2644/china-fired-rockets-to-stop-olympic-rain/

<comment><AUTHOR> heres the wikipedia page on how it all works...<http://en.wikipedia.org/wiki/Weather_modification></comment>


Ask PG: Threshold of intelligence - <AUTHOR>

In What We Look for in Founders, pg says that "as long as you're over a certain threshold of intelligence, what matters most is determination".
I'm almost sure (because of what I've endured in my life) that I'm determined enough to found a startup. However, even though I'm somewhat smart (as an undergrad I have way above average GPA and some nice accomplishments) I often wonder if I'm above said threshold.
Perhaps one way to find out is through your accomplishments. Still, the question "about the most impressive thing other than this startup that each founder has built or achieved" in the YC application form scares the hell out of me, when I think about what other people might have already accomplished at my age.
Should I wait until I'm better prepared before trying to start a startup? Or should I just do it now? I am the wisest man alive, for I know one thing, and that is that I know nothing. I can't help but to be overwhelmed by all the great things some people have done, and how smart they must be.
Therefore I ask pg: How do I know if I'm above that threshold of intelligence? <comment><USER2> _about the most impressive thing other than this startup that each founder has built or achieved_

Funny thing, that. I was thinking about this topic recently, as I don't feel like I've exactly "accomplished" anything worth talking about up to this point in my life (and I'm 39). But, that doesn't bother me because, the way I see it, _everything_ I've done in my (adult) life up to this point has been taking steps along the path to this startup that I'm working on now. Or, to put it a different way, I've actually been building Fogbeam Labs since I was 19 or so, even though it's only existed as a legal entity for 2 years or so.

I'd love to hear some YC applicants chime in and share their personal "what's the most impressive thing you've done" stories. If I had to pick one for myself, I'd probably go with one of these:

1\. I was formerly Fire Chief of a volunteer fire department, and one of the youngest people to hold that position in my area.

2\. I was one the youngest, if not _the_ youngest, Firefighting Instructors certified by the NC State Fire & Rescue Commission.

3\. I ran for Lieutenant Governor of NC, appeared in a statewide televised debate with the other two candidates and got about 125,000 votes (roughly 3%).

What I can't claim is to have achieved anything specific in terms of building a previous startup or having any particular financial return, blah, blah.

<comment><AUTHOR> I guess I'm not the only one suffering from self-doubt. I think this is hard to notice since since people don't talk about it that much.

If you ask me, I'd say you have some pretty impressive accomplishments!

</comment></comment><comment><USER3> You're over it.

<comment><USER4> Curious if you determined that solely based on his post or you know more about OP ?

<comment><USER5> Perhaps I'm being too cynical, but if PG's business model is cherry-picking busniess ideas from a firehose of potential startups, telling random strangers on the internet, "yes, you're smart enough to apply with a business idea for me to accept or reject", seems simply good business.

The cost of rejecting yet another poorly conceived business plan by a marginal candidate is less than the potential loss of billions if the guy who comes up with THE NEXT BIG THING is too shy to apply to YC.

<comment><USER6> To answer the main question, you don't need to know more than what the OP posted.

The poster show's self-doubt, self-awareness, the ability to self evaluate and the ability to learn as indicated by his undergrad.

So definitely the intelligence is there. Considering the poster is most likely in their early twenties, regardless of the idea, the best thing going for the person is their runway. They have the time to fail a couple of times before other life goals come into play.

And frankly, there isn't too much correlation between business success and high intelligence. Anecdotally, it can be argued that there is an inverse relationship.</comment></comment></comment></comment>