Show HN: Yoleo – A Beautiful RSS Reader - <AUTHOR> https://yoleoreader.com <comment><USER3> Instead of calling it a donation, just call it the 'pro' version and add like a supporter badge on the header or let them do something silly like change the color of their header like on HN. Will probably get more funds that way and won't get cynical people to roll their eyes at questionable use of the word 'donation' whether it is or not.

<comment><USER4> Yeah, but we're all geeks here. It can't be that hard to splice together some custom CSS to make hacker news look like whatever you want. Let me just click view source and OH GOD PG FOR THE LOVE OF ALL THAT IS HOLY WHY ARE YOU USING NESTED TABLES IT'S 2013!!?!?!!111questionmark!

Sorry, blacked out for a minute there.

<comment><USER5> Actually this has been asked here before and pg himself did answer the question [1] (you may have to scroll a little to see pg's response). pg also argues in one of his essays [2] that tables are the (lisp) lists of html, being very dynamic and flexible which is perfect for explanatory programming despite being unclear (in its purpose/structure) sometimes.

[1] <https://news.ycombinator.com/item?id=100460> [2] <http://paulgraham.com/arc0.html>

<comment><USER6> Wouldn't divs be a more appropriate analogy?

</comment></comment></comment></comment><comment><USER7> Why does everything have to be described as "beautiful"? Yes, it looks nice. It's not fucking Beethoven, it's a website that appears to do a damn fine job of managing RSS feeds. Yet every damn day we see another HN front-page article about such-and-such a "beautiful" web-app.

Edit: also, in this instance, a good chunk of the beautiful design seems to have been lifted from Google's style, from the icon style to the way they put a little red bar next to the current selection

<comment><AUTHOR> Beautiful is not just in the design, I've put a lot of effort into the mechanics of how things work, as well.

<comment><USER8> While i agree that beautiful does come in no small part from the "mechanics of how things work" there's NO WAY TO KNOW that you've done that from the site. It's a static screenshot. To be honest the screenshot's a bit... simple and plain. Not terribly notable. Maybe it is a "beautiful" experience to use it, but I've got no way of knowing that without signing up for it. What's my incentive here? Why should I bother with yours when all i see is a simple screenshot with NO indication of ANY notable functionality or mechanics?

</comment></comment></comment><comment><USER9> It looks nice, and at this point in time, this is what I'll probably be using next month.

A few things:

* Is there a way to scroll through all items in the same way that Google Reader does, rather than having to go to the next item by clicking (or hitting "j")? Feeds with lots of images suffer from the current approach, since there's a delay when each item is loaded (preloading them, say, five items in advance works well).

* Hitting keyboard controls like "j" when Firefox's "search when you start typing" is turned on doesn't work. I think you need to return false in the keypress event handler (or whichever one it is).

* I would suggest changing the body font to black with a weight of 400. I have Source Sans Pro installed, and at 300 #606060 it's too light (in both senses of the word). It looks nice enough, but the main purpose of this is for reading, so using the most legible font possible should be a priority. (Tip: 15px Arial looks a lot nicer than 16px, IMHO. It's what I was using when I made 90% of a feed reader.)

<comment><AUTHOR> * Yep, just hold "n" or "space" and you'll scroll through the articles * I'll look into that. * I'll try to gather some more feedback to what people think about the font. Perhaps it would make sense for this to be configurable.

<comment><USER10> I agree on the font-weight. Go for legibility first and beauty second. Personally I prefer 16px myriad pro.

Love it though! Will definitely use :)

</comment></comment></comment><comment><USER11> Hats off for the notification that popped up as I was trying to import telling me that HN traffic bogged you down. That was very classily and well done.

<comment><USER12> For me, it wasn't just that it popped up a notification, it's that hitting the arrow on the popup gives you a reply-to window with the text of the notification already filled in. Really made me feel welcome.

<comment><USER13> It looks like she's using <http://intercom.io> for the notifications. We use them at <http://circleci.com> and they've been hugely valuable for getting feedback.

</comment></comment></comment><comment><USER14> I added my first subscription just fine, but subsequent attempts have given me error messages.

1) URLs that should work with autodiscovery give me this message -> "Sorry, that does not look like a valid URL".

2) When I enter the full URL of the feed it appears to add the subscription successfully, but it doesn't show up when I refresh my screen.

3) The keyboard navigation is a bit weird. If "J" advances to the next item, should the previous letter "H" send me to the previous item (as opposed to "K")?

4) I don't see how I can manually create folders for my subscriptions.

5) I can't rename subscription titles.

Yoleo looks promising, but it feels like a beta product.

<comment><USER15> _3) The keyboard navigation is a bit weird. If "J" advances to the next item, should the previous letter "H" send me to the previous item (as opposed to "K")?_

No. It inherits this behavior from Google Reader, which inherits this from vi. [http://www.catonmat.net/blog/why-vim-uses-hjkl-as-arrow- keys...](http://www.catonmat.net/blog/why-vim-uses-hjkl-as-arrow-keys/)

</comment></comment><comment><USER16> Very cool. I sign in/up using my Google account, and the import is chugging along.

One of the things a liked about Reader was that I could get a very simple, compact, list of feed headlines, making it easy to scan through a large number of items to pick out the few that might be of interest. A good RSS read helps me get through a lot of data without having to step through every item or go through pages with only a handful of items showing on each.

I did not see a way to get such a layout in Yoleo. Are simple, compact title list views possible, or planned?

<comment><AUTHOR> I think something like this, a "compact" view, makes a lot of sense. Perhaps something called "Headline Mode", which may be in the books :)

<comment><USER16> Thanks, that would be fantastic. As it is now, though, I really can't see myself using it because it would take me a week to scan through my feeds.

Props on the work you've done, though.

</comment></comment></comment><comment><USER17> I created a new account and didn't use the option to sign in with my Google account. The importer didn't ask me to sign in with my Google account, but is happily waiting for feeds to import from Google Reader. Surely it isn't able to do that without me authorizing it first?

Also, are there any plans for mobile apps? If yes, please tell me that you're going to charge for them.

<comment><AUTHOR> Once your spot is up in the queue, you'll be prompted to import.

<comment><USER18> Just going to second or third the mobile interest. Half or more of the time I look at my feeds, it's on a phone or tablet.

</comment></comment></comment><comment><AUTHOR> Just so you all know, the import queue is currently building up rather quickly, so imports might take a little while.

</comment><comment><USER19> Love this. Couple of suggestions:

\- Please add folder support.

\- I'm sure the text look beautiful on Macs, but it's not easy to read my feeds with that grey-ish text on Windows. Can't you make the text a bit bolder or darker?

\- It's obvious you spend a lot of time working on this so I'd hate to see it closing because you couldn't afford to pay for your servers. I don't think asking for a donation is a good idea. Make it something like a $1-2/monthly subscription with a full month free trial. That way you may lose some customers, but your servers wouldn't be as busy as it appears to be now and you'd have a -sorta- fixed income and wouldn't worry about the future.

\- An instapaper support would be great.

\- I agree with other people here. That red looks beautiful but it's distracting when you're reading. Maybe tone it down a bit, or let us choose the color/background etc? Tha'd be a killer feature.

Best of luck!

</comment><comment><USER20> Clever name! I pressed "import" and it claims to be importing my feeds from Google Reader, even though I never gave it a password or feed or connected through Google. I wonder how that works...

<comment><AUTHOR> You're in a queue, you are going to be redirected to auth as soon as your turn is up. There are a bunch of people trying to import at the moment.

</comment></comment><comment><USER21> Hey Jamie - it'd be great if adding a subscription was a little more intelligent re: RSS url discovery. For example, I initially entered `daringfireball.net` and got a URL misformatted error. I subsequently tried prepending <http://> \- when really I needed to include a fully qualified path to the feed in the first place.

Otherwise, happy to import from Reader and check this out. I like that it feels light and easy to use.

<comment><AUTHOR> You should be able to enter a bare url. I looked into it and daringfireball.net doesn't provide a rel="alternate" for their rss feed so my little feed discovery ditty won't work for them.

<comment><USER22> They do have <link rel="alternate" type="application/atom+xml" href="/index.xml" /> though, so you might want to check for that as well.

<comment><USER21> Interesting - yeah, I picked it to test simply because I figure whatever Gruber is doing is probably a good base line test case.

</comment></comment></comment></comment><comment><USER23> It would be nice the possibility to import also from other sources other than Google. At this point many people stopped updating their feed on Google Reader.

<comment><USER24> Yeah, I moved to self-hosted Tiny Tiny RSS after Bloglines went down. OPML import would be great. On the flip side, OPML export is also a requirement for me - I don't want to re-enter all of my feeds.

<comment><AUTHOR> OPML import is on its way :)

</comment></comment></comment><comment><USER25> Finally an RSS reader that does just what you would expect from an RSS reader, and that does it well.

This may be the first real Google Reader alternative I've seen so far.

<comment><AUTHOR> Thanks so much!! <3

</comment></comment><comment><USER26> Jamie, I am getting about 10 errors a second in my console:

      Uncaught TypeError: Object sufio._xdWatchInFlight(); has no method 'apply' reader-29b4dd587f1ca6b5f0d639aac64ce9bf.js:1 e.(anonymous function) reader-29b4dd587f1ca6b5f0d639aac64ce9bf.js:1

Pretty print the error location from chrome:

      e.setInterval = function() {
            var e = t.call(arguments, 0), n = e[0];
            return e[0] = function() {
                try {
                    n.apply(this, arguments)
      Uncaught TypeError: Object sufio._xdWatchInFlight(); has no method 'apply' (repeated 1589 times)
                } catch (e) {
                    throw TraceKit.report(e), e
                }
            }, r.apply(this, e)
        }

The proxy at my work doesn't allow web sockets, and I think this might be related.

Also, I noticed that there are at least 3 different third party services being called (superfish, pusherapp and intercom). All of these are ancillary to the main functionality, right?

I haven't even got my feeds imported yet, and the app is already pulling down 2 MB. superfish in particular is super heavy. I think I would prefer a lighter payload.

<comment><AUTHOR> Superfish? I'm not even using superfish. Intercom is so users can contact me and pusher is so I can push you new entries without requiring a reload.

<comment><USER26> yikes. It was a browser extension that uses superfish to inject ads. the extension allows you to disable this feature, but it still pulls in superfish. [https://chrome.google.com/webstore/detail/orbvious- interest/...](https://chrome.google.com/webstore/detail/orbvious- interest/bkikpncfbjndhfkipijhdoddiadaipaa?hl=en)

I removed the extension and the payload is more like 1MB. Still seems hefty but not as much of a concern to me.

I also noticed that content wasn't gzipped. should be a simple matter to add that to nginx.

<comment><AUTHOR> Good catch, will do!

</comment></comment></comment></comment><comment><USER27> PLEASE charge $30+ per year for this, so I can use it and not have to worry if it's going to be taken down due to lack of funds later on.

<comment><AUTHOR> LOL, if only you weren't the minority! If you would like to donate more, just let me know and I can manually adjust your account. Perhaps I should make the donation amount variable starting at $9/yr.

<comment><USER27> I mean, if _Google_ thought running a free RSS reader was too expensive, imagine the headache it can cause you if/when this gets really popular.

Seriously, I admire your willingness to give something great away for free, but I also think you need to think about recouping your expenses and making your service financially sustainable for the long haul.

<comment><USER28> Did Google say it was too expensive ?

</comment></comment></comment></comment><comment><USER29> Looks like it's written in Ember.js—nice!

<comment><AUTHOR> Indeed!

<comment><USER30> Firing up the the Angular vs Ember debate again here. What's your take?

<comment><USER31> If we're picking this battle up, can everyone also argue a bit about the backend? I've been with Django for years, but I'm tempted to get back into Rails with how well it seems some of the JS frameworks are supported.

<comment><USER32> Also, should I develop with Vim or Emacs?

</comment></comment></comment></comment></comment><comment><USER33> This looks pretty fantastic. I've been searching for a good browser option outside of Feedly, which just doesn't do it for me. I agree that more information about the product and the people behind it would be nice, however, I'm still eagerly signing up when I get a chance today. :)

<comment><AUTHOR> Some more info about me was posted here: <https://news.ycombinator.com/item?id=5826803>

</comment></comment><comment><USER34> Most important question: How often do you check for new content? A RSS feed reader is useless to me if you will only check my feeds once a day for new content. Bare minimum reall needs to be once every 30 minutes for me to consider it.

<comment><AUTHOR> Right now it's every 20 minutes. If I get enough donations I can reduce this by adding a few more servers to the parsing farm :)

</comment></comment><comment><USER35> Consider using Mozilla Persona to handle authentication. It's easier to implement that rolling your own username/password solution (although I see you've already done that), and it's decentralised unlike using Google credentials.

</comment><comment><USER36> I signed up and like it - after Google Reader died (and, to be honest, a while before that) I haven't used RSS much and just had a saved set of tabs that I religiously opened to waste away my time. This might .. help. Thanks!

Unrelated: I'd really be interested in a follow-up story/post from you about the load you're experiencing. You just pushed a free [1] service in front of HN. How's the thing holding up? Both code/stack and allocated hardware? I guess it boils down to general curiosity on the one hand, the question of whether you can do this in a sustainable fashion on the other hand.

1: with donations

</comment><comment><USER37> I like the look of it. However, before I give you access to my data some more information on how it works, who you are, why I should use it, etc. would be nice.

That said, I hope you this gets traction. We need more options.

<comment><AUTHOR> Hey there, good questions! I'm a developer in Toronto, Canada and I love to ride bikes and write code. I work at a place called Unspace (<http://unspace.ca/team>), I'm the third one down (Jamie Gilgen).

Yoleo is a self funded project. I would like to keep it that way if I can. That's why donations are very welcome. I do however offer Yoleo up for free for those who are unable to pay. Yoleo is written in Ember, and is backed by Rails.

I'm really into Ember, and helped out out by teaching a portion of the most recent Embergarten (<http://unspace.ca/embergarten/>) here in Toronto.

The import is a simple one click import, I've directly integrated with Googles Reader API.

You should use it....because it's good?

Hope that helps!

<comment><USER38> Please force SSL/TLS on the accounts page if not everywhere (should be everywhere)...You're currently sending Stripe payments over http

<comment><USER26> I checked and the strip communication is done ajax style through https. I don't see a problem.

<comment><AUTHOR> This is true. Also, you should be redirected to https when you go to /account if things are working how they're intended. I don't run the full thing through SSL quite yet, because I pull in content from lots of different sources (images, for example), and that would cause SSL warnings.

I have something in mind for this, but haven't gotten around to implementing it yet. Full SSL is coming.

<comment><USER39> FYI, Camo might be useful for this:

<https://github.com/atmos/camo>

There's also a Go (golang) port:

<https://github.com/cactus/go-camo>

I'm currently using go-camo in my own feed reader and have experienced some flakiness (images fail to load sometimes).

(Also, nice work!)

</comment></comment></comment></comment></comment></comment><comment><USER40> Looks very nice, but there's no mention of what to me is _the_ #1 requirement for a Reader replacement: the ability to export your data. Ideally, the ability to export your data in the same format that Reader does, given that all the apps pitching to replace Reader can import that.

This isn't specific to Yoleo; nobody seems to be implementing this, and it doesn't show up on the comparison summaries that pop up here on HN from time to time. There's no way all the current contenders are going to last; why isn't everyone jittery?

</comment><comment><USER41> Looks beautiful, interesting pay model. Seems like enough people still use RSS readers...

Just 2 feature requests:

1.) Let us change the one color :) That red is pretty, but distracts from the content. Dustin Curtis got this right on his minimalist design in that the one-color isn't used in the actual content.

2.) Responsive design: Iv'e been removing apps from my phone for weeks and I couldn't be happier. Far less annoying update badges. Also, as something that is open all the time it would be great to keep it in a smaller window than the current design allows.

Great work!

<comment><USER42> Agree - the red is way too much.

<comment><AUTHOR> We can tone down the red if enough people think it's jarring, I love this kind of feedback!

<comment><USER41> I would probably start with removing the red from the titles first. Removing the red completely would take away from the overall design which is too nice to mess up.

I always think a straight forward headline/copy relationship should be achievable with spacing, and maybe font-size before adding bold or a color.

If it's still too much (remember, this is an every day kind of app!) maybe the active links on the right could go non-red, then if it's still too much the border-left on the active links on the right.

Again, grats on shipping something that looks good.

</comment></comment></comment></comment><comment><USER43> Looks like an awesome service... I need a replacement for Google Reader so I'll try this one out. Also, please consider accepting bitcoin so I can pay without revealing my private credit card information.

Update: I am trying it out right now and I've noticed it's taking quite a long time to load my Google Reader profile. My Reader profile is absolutely enormous - hundreds of blogs and thousands upon thousands of read and unread posts. It took about 10 minutes to load a single blog. This is going to take a while.

<comment><USER44> Or for ironic fun, accept Google Wallet XD

This looks great, gonna give it a try. It's simple, and that's harder to do well.

</comment></comment><comment><USER45> Why so many proprietary, web-based RSS readers? There are plenty of free readers so it's silly to get locked-in to yet another web-based RSS reader that will shut down some day.

<comment><USER46> I need an RSS reader that works and syncs across my Linux laptop, Windows 8 desktop, Android phone and Windows XP work computer (and I can't install any software on the work computer).

</comment></comment><comment><USER47> This is yet another RSS reader that doesn't understand how power users use RSS readers.

The information density is WAY too low.

It would take me forever to browse through my feeds using your interface.

The reason why I like (and still use) Google Reader is because it packs the most number of posts of any RSS reader on a single page and makes it easy to scroll for more.

Google Reader is "glancable". Yoleo is not.

Otherwise Yoleo looks pretty ok. Design is clear and the icons look good, and it's simple to use.

However, the "glancability" issue completely kills it for me.

</comment><comment><USER48> I did not sign in with Google, but the import page still says "Importing…" without any action on my part. Will there be an option to manually upload a list of feeds?

<comment><AUTHOR> You'll be prompted to authorize when your place in the queue is up. The importer queue is insanely busy right now so it'll be a little while.

<comment><USER49> The text says "You can safely navigate away from this page while your feeds are being imported " so it's confusing some of us who have not initiated an import.

Good luck with it!

<comment><AUTHOR> Oh, that is implied that once you start an import, you can move away.

</comment></comment></comment></comment><comment><USER50> I'm unable to add rss feeds from yahoo pipes. Here is an example feed:

[http://pipes.yahoo.com/pipes/pipe.run?_id=fb09cb3a62553d0f06...](http://pipes.yahoo.com/pipes/pipe.run?_id=fb09cb3a62553d0f06d28a6dc31335fa&_render=rss)

It is the most simple of my yahoo pipes rss feeds (I use pipes a heap), it just kicks out the current #1 here on hackernews.

I've never had any problems putting my pipes feeds into other rss readers.

<comment><AUTHOR> I'll look into this. I had to restart after upping some connection limits which may have been when you were adding your feeds.

Yep, just tested and that feed you mentioned can be added.

</comment></comment><comment><USER51> theoldreader.com just chokes on my 100 feed list, and feedly has just been flaky for me. Here's to hoping this works well with a mobile interface!

<comment><AUTHOR> The mobile interface isn't responsive _yet_. I have users with over 400 feeds, so it should be all good!

</comment></comment><comment><USER52> Anyone else reading this in their mind as YOLO reader?

<comment><USER53> Yes, but are the 4 letters considered intellectual property?

<comment><USER52> Well... you only live once, so you know, infringe whenever possible.

</comment></comment></comment><comment><USER54> When it comes to RSS reading, its all in the UI: how it is setup and how well one adjust to such an interface. As far as I am concerned, I cropped-up my own [1] and I am happy with the solution so far.

[1] [http://web-wanderings.blogspot.com/2013/05/a-no-coding- requi...](http://web-wanderings.blogspot.com/2013/05/a-no-coding-required- google-reader.html)

</comment><comment><USER55> I really like the cleanliness of your layout. But I find the color scheme rather annoying. The choice to use red for headlines is a pretty bad decision (sorry), I can only recommend you tone it down a bit or even chose a completely different color scheme. At least give us the option to change the colours ourselves. Otherwise, great effort!

</comment><comment><USER56> It's doing a fine job replacing Google Reader for me (I was otherwise going to use Feedly, who require me to learn a different UI).

Are you already using your own backend? It seems so, since it's showing me different articles and not sync read status from Google Reader (which seems to show new content sooner).

What's the meaning of the orange circle empty/filled?

<comment><AUTHOR> Yep, I'm using a backend I've written for the application. An API will be released soon, as well. Orange circle empty == read, filled in == unread.

<comment><USER56> thanks; thought it might be that, but it wasn't updating immediately for me. pref for page-through without reading to bottom = read?

also, i can't figure out how to add a new or existing feed to a folder. the tags i had from google reader are still there.

</comment></comment></comment><comment><USER57> So, many people have already had the time to switch from Google Reader. That means people have to be able to import feeds by OPML. Right now it seems like Google Reader is the only import option. There seems to be https, that is very nice. But theoldreader.com offers me this too. I need an import option before trying this out.

<comment><AUTHOR> OPML is certainly coming, next week I hope :)

<comment><USER58> Do consider sending out an announcement mail when you do. As it stands I'm content (but not happy) using another RSS reader. I'm not actively looking, but a good replacement would be wonderful indeed. As such, your reader runs the risk of being forgotten during the wait, which would definitely be a shame.

That said, sending unsolicited mails... you know the dilemma here.

</comment></comment></comment><comment><USER59> So far, so good. But the importing from google reader is hella slow. Guess a lot of people are trying it out right now.

<comment><AUTHOR> Yep, the importer is working away on the queue.

</comment></comment><comment><USER60> This looks pretty cool. Is there a example instance set up anywhere so I can see what it is like without signing up?

</comment><comment><USER61> Does it have nested folders? That would be very helpful for my feeds (scientific journals).

</comment><comment><USER62> Looks cool, I would pay for it, please just charge and don't pretend it's a donation.

<comment><AUTHOR> I'm not pretending. You can use it for free if you can't afford it :)

</comment></comment><comment><USER63> Hi, nice reader!! I like the pun of I read as the name of the site.

Nice template, really good work!

<comment><USER64> For those sin pistas, "yo leo" is Spanish for "I read."

</comment></comment><comment><USER65> "Yo leo" in Spanish means "I read", I don't know if this is a coincidence :).

<comment><USER66> as long as it's not a play on YOLO :P

</comment></comment><comment><USER67> looks great! couple of notes:

\- the red buttons sometimes gets broken for me on Chrome (27) - the text on them is either invisible (log in on the main page) or messed up (one letter over another)

\- text is rendered poorly on Chrome and Opera, probably a fault of the browser+font combination, maybe you can try to experiment with different fonts

\- did you think about something different than read/unread model? it was something that was irking me about Google Reader or now with Netvibes - <USER2> point of RSS reader is not to read it all, at least not when you have thousands of items to read

</comment><comment><USER68> Import doesn't work, but the notification system is very sweet and unexpected. Can't wait to try this out with all my feeds. So far none of the 'son of reader' offerings have really done it for me.

</comment><comment><USER69> nice job! but, i went to <http://yoleoreader.com/account>, there's a box for entering credit card. On page without ssl ...

<comment><USER26> the credit card information is transmitted to stripe over SSL. It looks fine.

</comment></comment><comment><USER70> Very nice, I'd love to be able to group my subscriptions in folders. Even better if I can navigate through all feeds in a folder combined instead of through individual feeds.

</comment><comment><USER71> It looks nice, but I personally prefer more readable font. Source Sans looks gorgeous, but maybe use 400 instead 300 on body text. Or use darker color.

</comment><comment><USER72> On a desktop it has a decent experience, but on my phone (S3 in 'tablet mode') it's unusable. Any chance for a mobile friendly version?

<comment><AUTHOR> Most definitely :) Soon!

</comment></comment><comment><USER73> I'm liking it for my simple needs. I have a bigger screen (1440p), any chance of getting the article to be wider than 610px?

</comment><comment><USER74> What does Yoleo have to offer that feedly doesn't? Is there a mobile app in the works (or at least a mobile stylesheet)?

<comment><AUTHOR> I feel that the interface is more performant and more to the point of focusing on reading your articles.

</comment></comment><comment><USER30> Just signed up. It's been importing from Google Reader for the last 20mins or so. Is it supposed to take that long?

<comment><AUTHOR> Yep, sorry about that. The importer is currently working like crazy on all the imports from this HN post :p

<comment><USER30> I signed up last night and checked again this morning. Still importing. Are you sure the backend processes are crashing under the HN load?

</comment></comment></comment><comment><USER75> Would be cool if I could add a bunch of feeds at once, so I can migrate more easily from a non-google reader.

<comment><AUTHOR> I did make the feed adding as streamlined as I could. However, I realize that it does pause for 5 seconds after adding the feed.

<a> -> enter url -> <enter> should be all that's needed to add a feed.

</comment></comment><comment><USER76> And my expected shortcuts work out of the box. Brilliant. My import isn't even finished and I'm liking it.

</comment><comment><USER71> I just realized that I can't export my feeds from feedly. Please somebody say I am wrong

</comment><comment><USER77> Noticed a minor error on the front page: "consider making an donation".

</comment><comment><USER78> Is there a way to add folders so that I can keep my feeds organized?

<comment><USER16> I signed in/up using Google, and it's busy importing my feeds right now, and they appear to be going into folders.

I don't see a way to arrange the folders though, which would be a big plus. If I can force an order through some naming convention that's OK too.

<comment><USER16> Just a follow-up. A day has passed and the import looks stalled. I'll keep checking for the next few days.

</comment></comment></comment><comment><USER79> How did you make it beautiful? Just good design skills?

</comment><comment><USER80> Is there an API?

<comment><AUTHOR> Yep, but it's not public _yet_.

<comment><USER80> Is a website, is beautiful, is easy to use, has an API. You've hit on the first three, so when the API becomes public, I am so using this.

Are you hosting this yourself? Do you expect $9/year members to adequate cover the costs? I'd totally be willing to pay more if it means I don't have to suffer through another shutdown.

<comment><AUTHOR> A few people have mentioned wanting to donate more. I could make a few more options for the donation amount. I figured I was on the high end at $9/yr. People don't like paying for software anymore.

</comment></comment></comment></comment><comment><USER81> Come on.. import already! I am excited.

<comment><AUTHOR> Sorrrrry, there are SO many people in line. It's chugging away fast now. I've made some performance improvements to the importer.

</comment></comment><comment><USER82> I'm just getting a blank white page...

</comment><comment><USER83> what is the backend stack for this? looking at your github, I assume it's using rails?

</comment><comment><USER84> looks really good, definitely going to try it out in the next couple of weeks

</comment><comment><USER85> looks good but is slow and not very friendly to me.

</comment><comment><USER86> Loving it. Thanks.

</comment><comment><USER87> can you please make this open source?

</comment><comment><USER53> Yolo Reader

</comment><comment><USER88> #YOLEO

</comment><comment><USER89> How what kind of backlog will it keep for unread items? It's not that weird for me to not pay attention to a feed or collection of feeds that I don't have time for at the moment. This is one of my main issues with newsblur, which has a ridiculously low limit of 500 per feed max (based on the number of subscribers the feed has), if you aren't a paying member and it's a low subscription feed it could be as low as 25 posts or something.

<comment><AUTHOR> Right now, the backlog is infinite, and I'd like to keep it that way if I can.</comment></comment>


Treatings - OkCupid for networking (NYC) - <AUTHOR> http://www.reddit.com/r/startups/comments/1oztcv/treatings_okcupid_for_networking/

<comment><USER2> Thoughts on whether they should move outside NYC?</comment>


Building a WireGuard jail with FreeBSD's standard tools - <AUTHOR> https://genneko.github.io/playing-with-bsd/networking/freebsd-wireguard-jail/ <comment><USER2> A few different articles this week about spinning up a wireguard container/jail/VM ...

But it's far, far easier to just fire up an sshd somewhere and 'sshuttle' makes it possible to turn _any ssh server that you have a login on_ into a VPN endpoint:

[https://sshuttle.readthedocs.io/en/stable/](https://sshuttle.readthedocs.io/en/stable/)

You don't even need to be a privileged user - just any old user login, over ssh, and you need python to exist on the remote system.

<comment><USER3> I can't believe the performance of sshuttle is anywhere near Wireguard...?

<comment> yjftsjthsd-h It wasn't when I used it. It's been too long to remember numbers, but I got a significant speed improvement by switching from sshuttle to wireguard.

</comment></comment></comment><comment><USER4> As people are again asking about vm/jails/docker/...

[https://blog.jessfraz.com/post/containers-zones-jails- vms/](https://blog.jessfraz.com/post/containers-zones-jails-vms/)

It is great article.

Bottom line, jails are "in kernel" primitives. Containers are not (or at least they werent when I last checked).

<comment><USER5> Containers are basically a very thin layer on top of namespaces and cgroups, which are most definitely in kernel primitives.

Docker adds packaging and distribution, but the hard work is in kernel.

<comment><USER6> It's all hard work. The primitives of containerization are in the kernel, but executing and managing them, especially securely, takes a fair amount of trial and error to do it right.

</comment></comment></comment><comment><USER7> Not seeking a v4/v6 flame war, It would be interesting to see the IPv6 version of this for people who want to use WireGuard to protect IPv6 flows back to "inside" and so much of this is NAT related, its not generally applicable to that case.

<comment><USER8> You can NAT IPv6.

<comment><USER7> The NAT exists because it has to.

You could NAT IPv6 to use the model as-is, but you could also re-do the model to not need NAT but still use wireguard to get through an ACL state which protects your boundary.

</comment></comment></comment><comment><USER9> What's the difference between the epair and the tap interfaces?

<comment><USER10> An epair [0] is a pair of virtual ethernet interfaces which are connected together and have network addresses: ethernet frames that go in one interface come out of the other.

A tap interface can be used by software to make ethernet traffic appear on an interface, i.e. software can write to a tap interface to simulate ethernet traffic being received on that interface, and an application can receive ethernet traffic from it. From the manpage [1]: "A write(2) call passes an Ethernet frame in to be "received" on the pseudo-interface. Each write() call supplies exactly one frame; the frame length is taken from the amount of data provided to write()."

[0]: [https://www.freebsd.org/cgi/man.cgi?query=epair&sektion=4&ma...](https://www.freebsd.org/cgi/man.cgi?query=epair&sektion=4&manpath=FreeBSD+12.1-RELEASE) [1]: [https://www.freebsd.org/cgi/man.cgi?query=tap&sektion=4&manp...](https://www.freebsd.org/cgi/man.cgi?query=tap&sektion=4&manpath=FreeBSD+12.1-RELEASE)

<comment><USER11> Thanks. So, is it possible that wireguard _writes_ to tap and the _bridge_ or another interface on the host _reads_ from it? Why would one prefer epairs over tap, if that's the case?

And, I don't really get why _wg-jail_ also needs _default-router_ to be pointed to _bridge0_ when the author _addm_ s _epair-b_ to _bridge0_ on the host (which file are the following lines added to anyway?):

\----

cloned_interfaces="bridge0 epair0"

ifconfig_bridge0="inet 192.168.20.1/24 addm epair0b up"

ifconfig_epair0b="up"

\----

And the explicit _default-router_ definition for _wg-jail_ , in _vm /wg/etc/rc.conf_:

\----

defaultrouter="192.168.20.1"

\----

<comment><USER12> > _I don 't really get why wg-jail also needs default-router to be pointed to > bridge0 when the author addms epair-b to bridge0 on the host._

The _epair0_ interfaces provide the layer 2 (Ethernet) connection between the jail and the host. The jail still needs a default IPv4 (layer 3) gateway so that it can route the traffic coming fron the WireGuard clients back out to the network/Interet (same as any other "router").

(Note: With just a single jail -- such as in this case -- the _bridge0_ interface isn't actually necessary (and the 192.168.20.1 address would then be assigned to the _epair0b_ , not _bridge0_ , interface on the host). The author went ahead and created a bridge with the intention to create additional jails in the future. This way, multiple jails can all be connected to the same internal "jail network". This is all mentioned in TFA, by the way.)

> _which file are the following lines added to anyway?_

      cloned_interfaces="bridge0 epair0"
      ifconfig_bridge0="inet 192.168.20.1/24 addm epair0b up"
      ifconfig_epair0b="up"

Those go in /etc/rc.conf on the host.

      defaultrouter="192.168.20.1"

This goes in /etc/rc.conf on the jail (which corresponds to /vm/wg/etc/rc.conf on the host).

</comment></comment></comment></comment><comment><USER13> Anybody know what the benefits of a BSD jail might be over a VM?

<comment><USER14> lighter weight than a VM. It uses the same kernel as the rest of the system, but sandboxes the userspace to limit what impact it can have on the rest of the system. They're not quite equivalent to a container on Linux but they're very similar in functionality.

<comment><USER15> VNET jails, as the author is using, also have a completely stand-alone network stack from the host-OS!

</comment></comment></comment><comment><USER16> I wonder if FreeBSD can saturate 1Gbit/s with the TUN wireguard driver. Linux's native driver is likely faster.

<comment><USER17> Netgate[1] is sponsoring the development of an in-kernel implementation of wireguard for FreeBSD: [https://forum.netgate.com/post/891869](https://forum.netgate.com/post/891869)

[1]: Netgate is the company behind pfsense, a router/firewall distro of FreeBSD

<comment><USER18> Any idea whats the target date for it in the tree ?

<comment><USER19> when it's ready, of course.

It just started passing packets (ping) last week. It would have been at this point weeks ago, had Jason not baked his e-mail address into the handshake protocol. (Harumph.)

<comment><USER8> Matt changing random algorithm parameters he didn't understand is kind of on him, sorry. I'm glad of the work he's doing, and your funding of FreeBSD native wireguard work, but just changing random cryptographic parameters before had had packets passing was an exercise in foot-shooting.

<comment><USER20> It was certainly naive of him. However, can't deny that baking the authors e-mail & domain name in to the protocol is pretty narcissistic.</comment></comment></comment></comment></comment></comment>


Never built New York: the city that might have been – in pictures - <AUTHOR> https://www.theguardian.com/cities/gallery/2017/jan/12/new-york-never-built-skyscraper-cathedral-pneumatic-railway-in-pictures?CMP=fb_gu <comment><USER2> I really like the optimism of the early 20th century. So often architect envisioned multiblock structures that would sit above the existing landscape to provide new spaces. A recent idea like that in Cupertino went down in flames at the voting booth but the Apple 'spaceship' campus continues apace.

</comment><comment><USER3> Beautiful, makes me want to build alternate history fiction around these buildings.

</comment><comment><USER4> Woah, the "hyperboloid" looks very much like Guangzhou Tower.

Google Images: [http://goo.gl/Q4zf9t](http://goo.gl/Q4zf9t)

<comment><USER5> The Pan Am building (now MetLife?) was built there instead. Much more rentable floor area than I.M. Pei's skinny tower.

</comment></comment><comment><USER6> Would have been great to see a dome built by Buckminster Fuller in Brooklyn

<comment><USER5> Fuller's 1960 plan for a two mile dome over Manhattan isn't mentioned in the parent article.[1] That was an impressive concept.

[1] [http://www.ecoredux.com/archive_project03_01.html](http://www.ecoredux.com/archive_project03_01.html)

</comment></comment><comment><USER7> Even though some of these are pretty old, they look fascinating. The human imagination is really something. That skyscraper bridge would look so badass in real life!

</comment><comment><USER8> _> Henry Gilbert's design was a hybrid of Alfred Beach's air-powered underground and Charles T Harvey's cable-powered elevated railway. Passengers would be moved through a double row of 'atmospheric tubes' suspended from wrought-iron Gothic arches, held on slender Corinthian columns._

An early idea of hyperloop?

</comment><comment><USER9> I once saw some drawings of plans for Moscow under USSR. They where just marvelous. Its a pity that I forgot to bookmark it and could not find it again.</comment>


Why I'm Not a React Native Developer - <AUTHOR> https://arielelkin.github.io/articles/why-im-not-a-react-native-developer <comment><USER2> Complaining about longevity of React Native and then recommending two proprietary, non-open-source competitors is, frankly, absurd. If Facebook ever abandons React Native we have all of the code and can continue to support it ourselves. If Microsoft or Appcelerator ever shut down their platforms for any reason, we're SOL.

While there are some valid concerns with using React Native, the productivity gain and community make it a more than worthwhile trade off.

<comment><USER2> I should also mention that we've found React Native to be far more productive to use than Appcelerator or Xamarin. Not sure what the author used to determine those charts near the bottom.

</comment></comment><comment><USER3> \- No clear roadmap

Indeed this would be nice to have!

\- No guarantees from Facebook about longevity

As more products within Facebook (eg: Instagram) and companies outside of Facebook are depending on this (Airbnb, Netflix, Alibaba, Microsoft, Baidu, Uber), there is a bigger community of folks who share the burden of keeping it going.

\- Legal concerns

This is the same license as React. Given the breadth of companies depending on React (all of those mentioned above, plus thousands more), I suspect that their legal departments considered it to be acceptable. If you don't, that's certainly fine!

\- JavaScript problems

JavaScript does have plenty of problems, but it's also what enables a lot of the nice things about React Native (x-platform, ota updates, resource sharing -- as the author identified).

\- Alternate frameworks: Xamarin, Appcelerator

I'd like to see the author write a similar assessment of these tools! It's worth noting that the author seemed to be unaware of the existence of React Native for UWP, maybe that would alter his assessment.

</comment><comment><USER4> Great article. On a side node, however: please don't write code like this:

      var weAreConnected = Math.floor(Math.random() * 10) > 5
      if (weAreConnected === true) {
        this.setState({
          isConnected: true
        })
      }
      else {
        this.setState({
          isConnected: false
        })
      }

Instead, simplify the logic

      var weAreConnected = Math.floor(Math.random() * 10) > 5
      this.setState({
        isConnected: weAreConnected
      })

The random choice is also overy complicate (and on a side node, the value is more likely to be false then true due incorrect comparision operator usage)

      var weAreConnected = Math.random() < 0.5
      this.setState({
        isConnected: weAreConnected
      })

If we use ES6, we can use the shorthand notation to simplify the code even more

      const isConnected = Math.random() < 0.5
      this.setState({
        isConnected
      })

<comment><USER5> I'm so glad you noticed this - it was bugging me.

I've noticed a pattern in "X vs. Y" articles where the examples of the technology the author doesn't favor are unnecessarily complex.

</comment></comment><comment> tyler-morrison Wonderful article! As a JavaScript developer, this is the first time I have seen a well-written critique of the language shortfalls. Usually these counter-arguments can't help but feel like flame wars.

That said, I think every JS feels these pressures internally. In 2015, some were even brave enough to give it a name — "JavaScript Fatigue". I personally work with TypeScript. But each time you kickoff a new project these days, the task of getting past all the boilerplate work seems to be increasingly difficult.

</comment><comment><USER6> While I can't argue the shortcomings of js, it's hard to not see most of the argument as a strong stance of statically typed languages that get compiled against those of dynamically typed languages that evaluate at run time. Both types of languages have their time and place and I wonder if bringing that discussion dilutes the discussion to avoid react native.

On the point of community versus big company support I can't help but observe what appears to be anti open source sentiment conveyed as fact. While many of us have seen fads come and go we have to admit the wild success and stability of many open source libraries without formal agreements to maintain them. Everything from Rails, to Django, to jQuery, and Linux distros. There is a caveat here that JS libs do seem to die out faster and have questionable quality but again plenty are also great.

I think the choice of React Native really boils down to understanding the platform and source. If you understand how React Native leverages the toolkits and interacts with the system I think you have the tools you need to make a good decision.

For me I prefer native development where I can easily control and limit dependencies. If I want to hit all devices or most I'll build a great responsive web app. At the end React Native is today NOT a production level solution that will cover android and iPhone devices, android is a separate toolkit.

My rambling is done I suppose. If anything can be gleaned from this it is to understand the risks and be mindful of the costs of adopting a new framework and dev environment. If you are careful, intentional, and lean on smart teammates for help you will be just fine.

</comment><comment><USER7> Opens with how other articles on React Native haven't been comprehensive, goes on to fill most of it about JS short comings like we haven't been aware for a decade.

And the recommendation at the end for Flutter, which shares all attributes of RN (open source, free, cross platform, from a large tech company, but one known for killing projects), was strange. It made the argument essentially I want RN but not a dynamically typed language.

</comment><comment><USER8> Very convincing. Now I really want to use react native!Thanks. The author points to lots of benefits and advantages in using react native, then shows some legal stuff you might or might not worry about (with a tinfoil hat example), then complains A LOT about javascript, making it very clear he doesn't really get it and can't understand how its ecosystem currently works.

</comment><comment><USER9> Hmmm I'm not writing articles about Elixir downsides, form the simple reason - I don't know this language well. Your article was written to show downsides of JavaScript, but example codes was written terrible. A lot of mistakes, weird examples and no basic knowledge how JavaScript is interpreted at runtime

<comment><USER10> The mere fact that you suggested Elixir has downsides will make the functional elitists go crazy.

</comment></comment><comment><USER11> There is no need to complain about Javascript once again, we know it all, the Flow criticism about the percentage of .js files is ridiculous, what is the percentage of Xamarin C# in all C# files ? The whole number is more important that the ratio. Also the portability of Xamarin is overestimated, you choose to use native non portable components or non native one but portable. The longevity of Xamarin is also overestimated, this is closed source software where React Native is open. This is not a good article overall.

</comment><comment><USER10> I simply cannot bring myself to use Appcelerator or Flutter. Isn't Appcelerator expensive (like Xamarin used to be)? Xamarin is ok, but keep in mind unless you use Forms, you are still using the iOS and Android SDK's so you still need to be proficient in both, so it is not as xplat as you think. Flutter would be ok, but I don't trust Google with Dart and it looks extremely underpowered with no community.

</comment><comment> vim-guru You don't have to write JavaScript code to use React Native: [https://github.com/drapanjanas/re-natal](https://github.com/drapanjanas/re- natal)

<comment><USER10> I've seen Ruby and F# used too.

</comment></comment><comment><USER12> I tried react a native a couple of weeks ago but due to a change in android versions the hello world tutorial wouldn't work. I got the distinct impression that it doesn't simplify android development, just adds it's own complexity on top.

The whole native widgets thing gave reminds me of GWT/AWT too, we're going around in circles.

</comment><comment><USER13> Really ? No opinions on this very well written article on HN. Surprised!</comment>


Founder's Fund Transparent Term Sheet - <AUTHOR> http://www.foundersfund.com/termsheet/ <comment><USER2> Longtime HN member here. We created this project at Founders Fund over the last month and a half to give startup founders and employees an idea of the economic ramifications that follow from a term sheet. We have thoroughly vetted the underying model from some of the top attorneys in the valley and hope this can become a go-to for those raising money.

All comments and questions are welcome, I'll be here all day.

<comment><USER3> Nice tool!

Rather than providing one exit value, a graph over a range could be helpful, to illustrate key thresholds, like the slope-change introduced by preferences or the exit values needed to provide the founders/VCs a particular return.

Also, adding an optional 'months to exit' would allow displaying the effective internal rates-of-return for a given exit value.

<comment><USER4> There's also <http://preferredreturn.com/calculator> that has the graphing you describe and the ability to add multiple rounds. However, the FF one has a better interface for convertible debt & early stage.

</comment></comment></comment><comment><USER5> So awesome. Nice work and very good for the startup community. One minor "nice to have" request would be to show the VC Series A ownership in a dynamic calc. Since many VCs optimize for 20% ownership or whatever, it's helpful to plan out various scenarios to see the ownership there (obviously it's easy to calculate so no big deal but might be helpful).

</comment><comment><USER6> This is a great tool! Nice work. I posted a similar tool on HN a while ago, which can be helpful if you want to click into the spreadsheet to see the calculations.

<http://news.ycombinator.com/item?id=4263459>

</comment><comment><USER7> Dear Founder's Fund team, thank you for creating this.

</comment><comment><USER8> "The world's most irritating not-quite contract"

The Big picture is often a function of fine details.</comment>


Ask HN: Will you buy or rent at this time? - <AUTHOR> I live in Melbourne, Australia. I have to move out from my current place.<p>How do you decide if to rent or buy ? House or apartment ? <comment><USER2> Check:

[https://www.reddit.com/r/ausfinance](https://www.reddit.com/r/ausfinance)

Great threads on topic almost every day ;)

</comment><comment><USER3> So it is often a numbers game. How much is your rent? Could you get a house you like for the same money? In my case the last time I rented, the rent was nearly equal to a house payment but was almost half the size. The apartment was TOO small. But with a house you have other costs - repairs - which are not seen with the apartment.

A common argument is at least you are not throwing your money away. Well some usually is as it goes to interest and taxes. As such I recommend you get a serious spreadsheet out and compare the numbers. In all likelihood, if you go for a house the size of your apartment it will be a major gain to buy.

Two warnings:

1) a house kind of ties you to a location. In an apartment you can move to Brisbane or Hobart easily.

2) realtors try to over sell you. Decide exactly what your limit is. Make it a hard limit. One cent over is definitely too much. And hold to it. Realtors seem to use some odd logic to get you into a housing crisis. And it always makes good sense at the time. Or only defense to their spurious logic is to have a fixed limit - I would say if it is even a penny more then I would not be able to sleep at night with worry.

</comment><comment><USER4> I bought my first house in 2006 just before the peak. I sold 3 years ago for less than I bought. But if I consider what I would have paid in rent for equivalent standard of living, then I broke even or maybe even a little ahead in total cost. However a BIG difference was that a significant portion of that expenditure became equity. So I was able to grow wealth rather than grow someone else's wealth.

If I were to do it again (for the first time) I would:

\- go out to dinner less and save more of that money (nothing to do with home ownership, but I could have hosted more at my HOUSE)

\- perhaps bought a little less of a house or bought a 2 family and rented the other unit.

<comment><AUTHOR> > I bought my first house in 2006 just before the peak. I sold 3 years ago for > less than I bought.

I am surprised housing price was less in 2017 than it was in 2006. I guess it depends where you live

</comment></comment><comment><USER5> How stable is your life?

Are you in danger of losing your job? (ferinstance) In that case you may need to move suddenly to another part of town or another state, or even (worst case) another country.

In this situation, you are far better off renting because that gives you more flexibility, as you don't have the hassle of having to wait until you sell your house before you can move.

Conversely, if your life is stable, you don't have a mortgage but your income ebbs and flows, you are better off if you own your own home. In times of low cash flow, it can be used as collateral to borrow food-money temporarily.

</comment><comment><USER6> I decided to buy almost 25 years ago. Now, I have my own home, with land, and no mortgage. Because that is the real choice... not what is best for you today. But in 25 years, do you want to be living on freely owned property, with minimal bills? Or do you still want to be paying rent to someone else?

There are legit arguments both ways... the numbers are not vastly different in the long run. But I am thrilled to have front-loaded my living expenses, so that I now am looking at a smaller burn rate of expenses during my retirement.

</comment><comment><USER7> [https://www.nytimes.com/interactive/2014/upshot/buy-rent- cal...](https://www.nytimes.com/interactive/2014/upshot/buy-rent- calculator.html)</comment>


A Generation Grows Up in China Without Google, Facebook or Twitter - <AUTHOR> https://www.nytimes.com/2018/08/06/technology/china-generation-blocked-internet.html <comment><USER2> I live in an economy with a significant ongoing trade and migratory relationship with China, and chinese of all ages (students, on the path to acquiring Australian permanent residency, Chinese women over 55 with significant retirement benefits from a lifetime of forced savings and work in the public and corporate sector in a buoyant economy)

I don't think its true to say Chinese social media is useless outside the economy: Many of these people continue to maintain links in qq.com much as the mobile west uses facebook for family reunion.

I think its more true to say that the direction of the 'gaze' in these chinese systems is quintessentially inward, and designed that way.

They're not offline: They're online in a different space.</comment>


Obama Acknowledges Snowden Revelations Undermined Tech's Trust in Government - <AUTHOR> http://recode.net/2015/02/14/obama-acknowledges-snowden-revelations-undermined-techs-trust-in-government/

<comment><AUTHOR> Obama has missed the point. It was the NSA's actions that undermined our trust. Snowden's revelations merely exposed those actions.</comment>


The problem with pitching social software - <AUTHOR> http://peternixey.com/post/15404416586/the-problem-with-pitching-social-software

<comment><USER2> I think social is too broad and too vague a description for a product. What problem does it solve? is it a horizontal/vertical market? Who exactly is gonna use it? Saying your product is social software seems like a cop-out to me.</comment>


Ask HN: ES6 javascript Generators+Promises async patterns - <AUTHOR> is it just me or indeed these async patterns based on ES6 Generators+Promises are pretty hard to deal with? I find them way more complex then the good ol' callbacks pattern; and by complex I mean hard to understand, hard to write, hard to maintain, thus not more productive. I like a lot the KISS principle and I find this is not even close to that. don't we all want to move into a better direction? to me this is not doing that.
is it just me having this opinion? am I getting old here and rusty and not open to new better ways of the new age? also, can you recommend a good source which explains these patters? <comment><USER2> Promises alone, good for me. Promises + generators, they just created a monster. I'll probably be sticking to just promises for a while.

JavaScript is becoming terrible these days with all these foreign concepts being pulled in. It's not like the language doesn't work without them. It even gets better, ES7 has the async keyword that's totally different from generators, but is geared to do the same thing. So you now have 4 ways to deal with async stuff: vanilla callbacks, promises, generators and async functions.

\---

On a side note, the people who lead JS included `const` in the spec. Now people are using `const` to denote value holders that won't and should not change values, happy ever after right? Wrong. The same people that are leading JS are making fun of people using `const`, saying that you're probably brain- dead to need `const` to keep you safe.

That's the kind of people "leading" JS.

</comment><comment><USER3> I'm assuming you've looked at [https://www.promisejs.org/generators/](https://www.promisejs.org/generators/)

I somewhat agree, prefer callbacks to promises, generators as I see it give you more control of what happens within a promise and how to deal with multiple promises being returned.

The danger I see with promises is they can be used incorrectly. The project I've taken over at work, the developer used a promise as a timer and littered watching the same promise all over the code using ``` Promise(functionToResolve).then(function()... ```

This means we never know where a function is being called from. I don't think you could do something like this with callbacks, instead you'd have to do ``` function(callback(){ // trigger your other methods here } ```

but maybe I'm wrong, I never would have expected somebody to use promises in the way they are used here.

Like'em or not, they are here to stay, and some people like the more synchronous appearance of them and I believe when dealing with an array of promises, generators will provide more fine-grained control.

Keen to hear others thoughts though.

<comment><USER2> > This means we never know where a function is being called from.

Not really. Chrome dev tools has an "async" option which allows the stack trace to follow through async calls. You will see the async caller instead of the async execution mechanism in the stack. Further, you can black-box frameworks so you only see your code.

> The danger I see with promises is they can be used incorrectly.

The real danger of promises is the different implementations that existed beforehand. For instance, jQuery promises weren't standards-compliant. Their implementation of `then` (which came from `pipe`) wasn't the same as the native one. Getting used to one, you'll easily write wrong code for the other.

> generators will provide more fine-grained control.

Depends. It's a foreign concept in JS, making it harder to follow as opposed to promises which are nothing more than stateful objects. Also, one's mental model will change with generators. One has to look out for that tiny `*` to know the code is "generator friendly".</comment></comment>


Ask HN: How do you stay motivated when the project gets stale? - <AUTHOR>

I have two clients with nearly finished websites ready to do but pesky issues and small annoying bugs are preventing the site from going live. I am to the point where I want to find someone I can pay to finish the job just so I don't have to look at the projects anymore. This problem is reflective of my habit of always moving on, many times too early. I love new ideas and peruse them until the fun of the early creation and exploration is over. Then it gets stale and when I do keep working on it, it is passionless work.<p>Any advice? <comment><USER2> ToDo lists. I find that when I get bogged down for any reason, if I create a todo list of items that have to get done I'm more likely to do the items on the list. I tend to pick up momentum as I cross items off the list. Make the list a manageable size, finish it off and create a new one.

For product related tasks, getting actual users and feedback from them is a huge motivator as well.

<comment><USER3> I don't think I'd get any work done without my todo lists. Here's what works for me:

\- Make the list a manageable size. I find more than 30 or so items overwhelming.

\- Never let the list run out. I add new items constantly. The last ten or so items all read 'Expand this item: (some high level feature that can be broken down)'

\- Mix easy and hard items. Striking an item off the list is satisfying, so make sure that after a particularly hard item, you can breeze through two or three more.

\- If you're encountering a lot of hard items, spend some time expanding then into separate line items.

\- At the end of the day, don't give into that temptation to polish off the easy item at the top of the list. Otherwise you'll work your way through a couple more easy items and end up having to start the day at a hard one.

\- Have a visible backlog of your completed items. It's satisfying when you feel like you aren't making progress.

\- Always attack the list in order. If you find yourself needing to move items around to satisfy dependencies, go right ahead, but if you skip and item because you just don't feel like working on it, at the end of the project you'll have a whole list of items you don't feel like working on.

</comment></comment><comment><USER4> Not leaving the polish for the last. I've noticed that it's bugfixes and the final polishing that are the most tedious (everything's done and most of it works).

I now polish, test and debug every bit of the project as I go along. It's very tempting to pinch all the fun parts out of the project right away (the core functionality) and leave the little stuff to the end, but this is gonna leave you with heck of a lot of little things to do after the project's ready.

But once you're already trapped in the little things, it's the todo lists: dividing it all up into as little pieces as possible and going at them one by one. This also forces you to measure how much of it is still to be done - otherwise you feel like every one of those last bits is going to be the last one. And when it isn't, it's going to feel like puke. .. and fixing bugs like this is also prone to create other bugs.

<comment><USER5> I've tried that but found that it's best to polish at the end. Nothing wastes more time than throwing away polished code. I don't fine tune anything until I'm sure I'm going to use that code in production.

</comment></comment><comment><USER6> You need to internalize a desire to use the finished product. In otherwords, you have to want the finished product.

This is probably a horrible misquote, but I remember a long time ago John Caramack saying that what drove him to fix all those little stupid bugs at the end of a product was the desire to play the finished game.

Others who just wanted to ship it were having a tough time sticking with it since they just liked developing cool tech and wanted to move on to the exploratory phase of the next project.

Now, if it's a clients website you have absolutely no interest in and can't figure out a way to have an interest in (coding for it's own sake), you've got bigger problems :)

</comment><comment><USER7> For me, interacting with actual users motivates me to "polish" a project. I can imagine it is very tough if you can't go live. Not launching until things are perfect seems like a problem in and of itself.

</comment><comment><USER8> When I have issues of this ilk, I look for the next, absolutely concrete, thing I can do that will result in a payment.

</comment><comment><USER9> My take on this is that finishing up the last 10 percent is what separates the seasoned pro from a newbie developer. Correctly judging, assessing, assembling a view of exactly what is lacking from a project to make a tight release is and making a big list and iteratively finish it off is immensely satisfying for me. here's where actual software for other humans are created, design decisions evaluated and put to the test. Will it hold or require too much glue code, making a big refactoration à future must?

i force myself to like this stage and i like it more and more as i am less motivated by designing systems from ground up since that has become easier over the years, and I am mostly building web apps.

</comment><comment><USER10> I would like the answer to that question as well... Although I have this problem with my personal projects (that are supposed to be "fun"), not so much professionally.

The problem is that when I get bored with (which might happen very soon, as in, after a few days), it stops being fun... so then your choices are to go on anyway, in which case you're doing drudge work instead of something enjoyable, or move on to a different project, which will likely meet the same fate.

I haven't found a solution for this yet, although I suspect that it might help to have a few other people working on the project as well.

</comment><comment><USER11> There is no easy fix for this. You need to be disciplined enough to keep working when you've done all the fun parts.

The good news is that if you can get better at being disciplined just by practising it, and the rewards are very high, because you become a finisher, and people like and value finishers.

Also, the act of finishing is immensely enjoyable, and is therefore its own reward. With practice your mind will begin to be motivated by that reward, once the little rewards of the early parts of projects have gone.

<comment><USER12> The act of finishing should be enjoyable but what if it's not? Are there any tricks to make yourself be happy about the finish?

<comment><USER13> Yes. Sit down and imagine how you're going to feel when you are finished. Really try to make yourself believe that you're done. If these are features, imagine using the product with those features in place, and how much it adds to it. If it's design, think about how much better it's going to look when your through with it. If it's performance, think of how your product is now more capable of handling more requests or is faster and lighter-weight feeling. Whatever it is on the todo list, I'm sure there's a good reason it's there.

Now that you've imagined how much these things on your todo list are going to improve whatever it is you're working on, and how awesome it's going to be when those things are in place, why not get to work?

</comment></comment></comment><comment><USER14> The work is not only the flash of the new shiny. Those pesky issues and small annoying bugs are part of the work. Try to raise your perspective from 'what's new' to 'what's great' and 'what's great' requires focusing on what the client needs rather than on your excitement. Delivering what someone needs will, in the long run, give you more enjoyment than the fun of exploring the unknown.

</comment><comment><USER5> Deadlines. Find an excuse to set a hard deadline with real consequences up front and stick to it. The results are dramatic.

</comment><comment><USER15> What I do—and this is definitely easier in a startup where you have a greater ownership stake—is to take pride in efficiency. The number of bugs fixed. The number of tweaks produced.

Having a nice low-friction issue tracking system can help with this. I like Pivotal Tracker.

<comment><USER16> > The number of bugs fixed. The number of tweaks produced.

possibly even better: the number of bugs not produced

<comment><USER17> Well, that is probably something you can't keep track of.

</comment></comment></comment><comment><USER16> money</comment>


Intel to put Windows 8 on phones - <AUTHOR> http://www.zdnet.com/blog/hardware/intel-to-put-windows-8-on-phones-wait-whaaaaat/10981 <comment><USER2> I don't know that much about Windows Phone 7 but my understanding is that developers code against a version of the CLR, so their apps should be easily ported to a new OS.

<comment><USER3> Developers for Windows Phone 7 target either XNA for games (which in theory is why they are able to integrate with XBox Live) or Silverlight for everything else.

I assume that if Microsoft intends for Windows Phone 7 to be a long-term platform (which their statements at CES cast some doubt about) they may add in further parts of .NET into the SDK.

<comment><USER4> I think they've always planned for Windows Phone to be merged into mainline Windows eventually, once the hardware is ready (though expecting that to be the W8 timeframe is a bit optimistic on Intel's part). That's why they've been careful not to expose the underlying CE kernel to third-party native code (only through a .NET VM) - so they can change the kernel without breaking things.

Not sure how that makes it "not a long-term platform", though - that's like saying consumer Windows in the 90s wasn't a long-term platform because they eventually swapped out the 9x kernel for NT. The switchover, when it eventually comes, should be mostly transparent to users and developers.

</comment></comment></comment><comment><USER5> Yet another Microsoft attempt at mobile? If they screw Windows Phone up, I doubt they will get another chance from the public.

Microsoft is good at one thing: backward compatibility, if they throw this away, I don't know if they will have enough value remaining in their offerings.

I really think Microsoft should either man up, and create a descent mobile OS, or simply stop creating new crap every once in a while.

<comment><USER6> This is an Intel plan, not Microsoft. They're trying to get press for x86 designs in mobile more than anything. Clearly Intel and Microsoft's interests are diverging here, or CES wouldn't have had the Win8 on ARM bomb dropped.

<comment><USER7> The x86's real selling point is that it's the best platform for running Windows. Now that Windows is becoming less relevant its in trouble. In some sense Intel has more riding on the success of Windows than Microsoft does...

<comment><USER8> Aside: to unpack that, x86 is the best for running all the x86 software out there. It has by far the greatest range of software, which is why wintel sacrificed so much for back-compatibility.

If that catalog is at all usable in a phone form-factor, then it is valuable. Worst case: you dock to a monitor/keyboard most of the time. But who knows, with built-in projectors, and an eeePC size keyboard covering the entire phone, perhaps it is a goer.

The biggest problem is if the form-factor is totally unusable for desktop software, when there is no desktop. Personally, I think it would be awesome to run regular software on a tiny tiny phone. Awkward, but awesome.</comment></comment></comment></comment>


Why Facebook Is Deleting Drag Queen Profile Pages - <AUTHOR> http://techcrunch.com/2014/09/15/why-facebook-is-deleting-drag-queen-profile-pages/

<comment><USER2> About 5 years ago, I could see that this kind of thing was inevitable. I've avoided Facebook in protest ever since, and I now try to avoid Google as well. I admire most people who work in those places, but sufficiently advanced corporations are indistinguishable from totalitarianism. Emigrate!

Seriously, anyone enforcing a "Real Names Policy" in the 21st century should be pelted with copies of _Reality Isn 't What it Used to Be_, which is small and harmless, and _History of Western Philosophy_ , which is neither.

</comment><comment><USER3> Would the issue be framed in the same way if they were deleting profiles because someone used a name like "Thug Money" or "Street Playa"?</comment>


Report: Snapchat Turns Down $3 Billion Offer From Facebook - <AUTHOR> http://mashable.com/2013/11/13/snapchat-facebook-acquisition/

<comment><USER2> ghah - this makes no sense. What else could they hope for, an IPO? Only a handful of other co's could possibly offer them that much.

Remember when Groupon turned down $5 billion from Google, and then Instagram snapped up $1 billion from FB. How'd that work out for Groupon?</comment>


Is the CS degree on its way out for software engineers? - <AUTHOR> https://techbeacon.com/cs-degree-its-way-out-software-engineers <comment><USER2> This suggests that computer science and software engineering are getting trumped by domain-specific education and that the domain-specific education has now teaches computer skills as part of their curriculum. Computing has become part of the normal toolkit.</comment>


How to ask for anything on the internet - <AUTHOR> http://datarobots.com/writing/how-to-ask-for-anything-on-the-internet.html <comment><USER2> Similar resources

* How To Ask Questions The Smart Way : <http://www.catb.org/~esr/faqs/smart-questions.html>

* Getting Answers <http://www.mikeash.com/getting_answers.html> (highly recommended by some as a substitute to the above)

* Asking Great Questions [http://www.computerworld.com/printthis/2004/0,4814,97281,00....](http://www.computerworld.com/printthis/2004/0,4814,97281,00.html)

* How to Ask Questions on IRC <http://www.sabi.co.uk/Notes/linuxHelpAsk.html>

* How to ask Questions on WinDev <http://www.windev.org/index1f.asp?page=faq></comment>


Netflix releases first episode of Biohackers as DNA code - <AUTHOR> https://www.biohackersnetflix.com <comment><USER2> _That_ is clever marketing.</comment>


Ask HN: How do I get through to startups for a summer position? - <AUTHOR> I am a second year student at a university in Ottawa, Canada. I have a fairly broad range of technical skills (graphic design, programming, networking) but none are particularly developed. For instance, I can create an AJAX web application, but lack the experience to know how to scale it or structure it for future maintenance.
I think that I could learn a lot from working in a local startup, but not quite sure the best way to approach one. Who should I contact? And how?
Also, which startups would even be interested in hiring generalized students like me? <comment><USER2> Join this meetup group: [http://www.meetup.com/The-Ottawa-LAMP-Perl-and-PHP- Meetup-Gr...](http://www.meetup.com/The-Ottawa-LAMP-Perl-and-PHP-Meetup- Group/) and try networking there. There's a lot of smart local folk, and many of them are hiring.

<comment><AUTHOR> Wow, thanks! This sounds great!

</comment></comment><comment><USER3> I would definitely recommend trying to get on the inside of the startup somehow. A huge part of business is networking. Do anyone of your friends know someone who works at or owns a startup? See if they can put in a word for you and maybe get a face to face interview set up.

Make sure that you are clear that you are doing it for the educational experience and not for the money. I wouldn't necessarily offer to work for free, because I think that makes you sound a little desperate, but be clear that you aren't expecting to get paid a whole lot.

This is basically what I have done to get jobs the last two summers, and it has worked really well for me. Last summer, I worked for a guy who spoke in one of my comp sci classes and who I had a few connections with. The summer before that, I worked for an international nonprofit that I had several connections with. The pay was not great (basically just covered living expenses), but the experience was well worth it.

</comment><comment><USER4> Networking at local tech events would be a good start. If you code outside of class (which it sounds like you do), you are already ahead of 90% of people in most CS programs in Canada. In my experience, if you meet someone in person or are referred by a friend you have MUCH better odds of getting a reply than just sending an email with a resume.

Being able to demonstrate some working code is always good, whether it's a live site or some open-source contributions or some other code you can show. Assuming you have no work experience as a developer, it's pretty important that you demonstrate your abilities somehow.

Are you looking to stay within Ottawa? Ontario? Canada? There seems to be a lot going on in the GTA these days, if you're willing to live there.

</comment><comment><USER5> Carleton or UofO? Are you in the co-op program or looking for a general summer position?

Startups tend not to hire co-ops, because they cannot afford the risk of getting a dud. I worked for a term at a startup and it actually was very difficult to dive into, it was a very niche technology and nobody had time to guide me.

This early in your career, maybe working for a large company doing a small project would be ideal. You would probably get paid better and have a boss that has time for you.

If you want to volunteer at a startup and find the right team it would probably be the best opportunity for skill growth.

</comment><comment><USER6> I was in a similar situation years ago and found some great internships with small organizations.

Determine what type of company you'd like to work for and the region you'd like to work in. Put together your resume and a cover letter explaining your situation - student with skills seeks internship. Enthusiasm, personalization, and academic credentials will likely go a long way.

Breadth is important. Contact a lot of companies. You may not be able to work with your first choice, but there may be opportunities you're not aware of.

This worked well for me. I met enough people during my second internship in NYC that I had a bonus and a great job when I graduated.

In hindsight, I'd also recommend contacting non-HR employees of companies you're applying to. Don't be afraid to track down the CEO's Skype or AIM account. If you send a personal email, I see no problem in following up with a phone call.

I want to emphasize that it's unlikely something interesting will fall in your lap, so you need to be proactive. That said, I think you'll be surprised by the response and happy with the results.

</comment><comment><USER7> I've both been hired at startups through the coop program and have hired employees through the coop program for my startup.

Give that a try.

In Canada, if your marks are high enough (B average), you can also qualify for an NSERC undergrad student research award, which basically lets a startup recoup half of a reasonable salary if they were to pay you.

</comment><comment><USER8> I'd be interested in talking with you about an internship.

email@example.com

</comment><comment><USER9> When I was looking for internships I would just look for startup lists on cities I was interested in. I saw their open positions and sent a mail with my resume and a well crafted cover letter based on what I was interested on. Most companies were very accessible and would at least reply back.

</comment><comment><USER10> email and offer to work for free

<comment><USER11> Even if you're anxious to get a job in the industry, I would argue that you should never offer to do so for free. Employers don't value "free" because they assume it's sub-standard even if you kick ass. You may be great, but if you offer to do something for free, your time likely won't be valued much and you'll end up working the useless projects. It's not fair, it doesn't make sense, but I notice that's just how people treat "free" and the highest paid opinion usually wins even if it's not always right. Respect yourself, ask for at least token pay.

<comment><USER12> I used to offer myself for 'free' as a youngster, then after a week I'd ask how much they'd pay me if I stayed. Never had a company not make a half decent offer after that week.

You risk a week, if they know what they've got they'll keep you, if you're not worth keeping then the problem might be on your end.

<comment><USER13> Here's the problem: he wants to work at a startup. A startup, if successful, that's at ramen profitability - meaning, there isn't any cash for you even if they wanted to pay.

If you've got a VC-backed startup with cash, they're recruiting interns through the traditional processes anyway, where this guy is going to have trouble standing out.

<comment><USER12> So, the pay could be in something other than cash, if the startup is anywhere near successful bragging rights would be one thing that would be valuable, a really good reference would be another.

I remember that when I was 15 I worked for free in a computer store, the deal was simple: I could play with the computer as much as I wanted, but if a customer showed up I had to explain how it worked as good as I could (Radio Shack in Amsterdam). So, even if I didn't get 'paid' in money I got to play with a computer that I could not have afforded for several years.

Maybe something like that is feasible in this case.

<comment><USER13> I completely agree. The resume boost/reference can be worth more than $9/hour.

</comment></comment></comment></comment></comment></comment><comment><USER14> We'll actually be posting an opening for an intern at Carleton; we can definitely use a generalist like yourself. Our company, bandzoogle.com is based in Montreal, but we have employees in the UK and US. We're not really a "startup" anymore, but we can give you some experience in scaling a web app (we use S3/EC2). If you're interested, hit me up at chris[at]bandzoogle.com

</comment><comment><USER15> Check with your a university advisor. In Vancouver we have someone from the local university that helps places students at startups.

</comment><comment><USER16> It's as simple as emailing and asking. It's good to be specific about what you're good at and what you'd like to work on. It helps if you're in the area and can commute as well. We had a few people email us and have picked one Computer Science student at Michigan (who lives in NYC) to work with us this summer in New York.

</comment><comment><USER17> We're always looking for good interns at NewsCred, although summer is a long ways away for us. Drop me a line and we'll keep in touch (shafqat at newscred dot com). We're launching a lot of new products in the next few months, so should be an exciting time.

</comment><comment><USER18> You should also consider putting a link here to your blog/portfolio or just a way to contact you. I am the founder of a Montreal-based startup and always love to talk to smart students who are eager to learn.

<comment><AUTHOR> Thanks, I've added my email.

<comment><USER18> Where? Don't see it on your profile.

<comment><AUTHOR> Oh I'm sorry. I didn't notice that the "Email" field isn't public. You can contact me at email@example.com

</comment></comment></comment></comment><comment><USER19> Go to entrepreneurship or tech networking events. At least in LA, I'm always surprised that no students show up!</comment>


Ask HN: Recommend me podcasts - <AUTHOR>

This week, Marco Arment (the guy who made Instapaper) released a podcast app called Overcast https://overcast.fm. I tried the app and realised that there's some great content on podcasts.  For now I'm listening to The Tim Ferriss Show and Foundation.
The problem is that it takes some time to listen and form an opinion about a podcast.
So what are you listening?
PS: Someone already asked the same question 4 years ago. In 4 years, a lot of things change... <comment><USER2> Someone also asked four days ago.

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

<comment><USER2> Also more here: [https://news.ycombinator.com/item?id=8041215](https://news.ycombinator.com/item?id=8041215)</comment></comment>