76 comments

[ 4.7 ms ] story [ 106 ms ] thread
If it's Electron & Node, why is it OS X specific?
Just downloaded! I love it. The only thing I was going to say was I wish it had the ability to resize the window and save the size for each time it opened...then I realized you were one step ahead of me and had done exactly that! Very impressive, and a fantastic example of React and Electron. I'm definitely bookmarking this to come back and learn from the codebase later.
> Download the latest build for your platform from releases.

Cool !!

Oh.. Mac only right now.

there is some irony here... by saying this and then "We are working on Windows and Linux versions. " is not exactly fair. The entire purpose of electron is to "Build cross platform desktop apps with web technologies" so by stating that and failing to release other platforms is quite silly
Can the non-Mac users have some screenshots? I dug around the GitHub repo and the website, but didn't see any.
(comment deleted)
Looks great - in all honesty I probably won't use it day to day as I waste enough time checking HN, although perhaps it would be a less distracting way to check it. Source code looks nice and clean, look forward to digging into it!
I really like it, runs well under openSUSE (you have to download the repo and follow the instructions under "Development" in the readme). Hope to see it's functionality expand further.

Edit:

One thing I would change is maybe make the overall border a more noticeable darker color, I keep getting confused as to where the borders are for when resizing it, and maybe a way of dragging and dropping the window (that is more obvious if it is there, I haven't figured out how to move the window without using what I assume to be KDE specific features).

Thanks giancarlostoro. That is great feedback. Let's gather more responses from others, and we will make the change. We want this to be super easy to you to use.
btw, I am glad it works well for you under openSUSE. You have made a excellent example for others to start using it, w/o waiting for a build for a specific platform. We will get there. We are working a build for Windows version.
Looks cool. But... 100+Mb for a notification app?
That's Node (V8) and Electron (Chromium and all its dependencies) for you.
Maybe, just maybe, we should just bundle Node and Electron into a package, install that as a shared library (similar to the way .NET and Java are installed) and then just ship, in the installer, a tool that downloads those if not already installed?

Would save a lot of memory and time for everyone.

Electron is moving pretty quickly (and breaking APIs) at this point so you'd end up with just as many versions of the shared library as you would copies in applications.
Breaking APIs is not generally good either.

But if a single newsreader contains more code than a full PlayStation game, you know something’s wrong.

This is just Wirth’s Law in action.

The very fact that we 'do not break APIs' is one of the reasons that this newsreader is 100+ MB. If Google Chrome wasn't 4,490,488 lines of code designed across years of development to, well, _support old web APIs_ -- then it would likely be much smaller. :)
Well, and, as the parent said, even with this you still can’t use the same version of the library even for a few months. That’s the worst out of both worlds.
How is it 100 MB? RAM or disk space?
After checking RAM usage, I'd say both.
256MiB RSS when active, hahaha. Chrome isn't memory efficient, but this takes the cake.
Yeah, unfortunately the app bundled with a Chrome. But, the upside is it's implemented in HTML/CSS/JavaScript and it's hackable :)
Did you consider making a simple Chrome app of this?
Perhaps, that will come. We need to learn more about how people use it, and get more feedbacks.
Thanks! I'd like to dismiss and/or mark as read for stories I'm not interested in.
Thanks for sharing your thought. We talked about this and are going to implement it.
I have installed this and I agree with other users here - I like it. I can check it whenever I want to and it's non obtrusive.
Because I need to get less work done? It does look great.
Haha. I find myself keep watching the menu bar for updates, then click on the news item. Glad you think it looks good. Feedbacks are welcomed.
I would bet that my newsreader uses booth less RAM and less disk space. This is what feeds were invented for. Why should I install that much bloat just for reading HN?
You must be a lot of fun at parties.
Why should you? Okay, don't.

If OP gave you free beer would you spit it out over him and say it's too bitter?

That's a pretty bad metaphor. I am refusing OP's free beer, because I don't drink beer. I also question the need of giving away free alcohol. Instead, I take the free glass of water from the next guy.
I say take the beer and chill man. No need for the -ve vibe. Cheers
You should hit me up sometime. I'd love to party with you. /s
Come on guys, this isn't Reddit so lets keep the commentary constructive. I feel rtz12 has some valid points - although his/her language style contains emotion you can't presume to know why that is without being that person.
Is it really a good, constructive point, though? Boo hoo, too big? Having to make concessions drools?

The cutting edge of building xplat desktop apps with browser tech involves independently bundling Node and Chromium, so it's gonna weigh 100+mb like a single Chrome browser tab. That's life.

Yes, we all have different appetites for different sets of trade-offs.

Okay, so you don't drink beer.

    > "No thanks, I don't drink beer - cheers for the offer though!"
Well, afaik you'd have to proxy HN somehow in order to get an RSS feed to feed to your rss reader?

I personally think that proxying by installing a 100 mb runtime just to be able to change some styles and change around some of the UX with custom javascript is a bit silly, but others here seem to like it, so who am I to judge?

I don't care how massive the app is compared to just web browsing...it's always great when people show off not just the product, but the open source code. Thanks!
Glad you like we open source it :)
Great app. Would be cool if it could be installed via homebrew and use an existing node installation.

Anyway, keep up the good work ;)

This is really great. I like that it remembers read stories, even across sessions.
Not particularly directed at OP, I haven't tried or even downloaded the app. But am I the only one that when I see 'Node' and 'Desktop' in a headline immediately think 'this may be really nice but it is just gonna be to big for what it does'? And, as a followup, what is the appeal of using Node for desktop dev?
The advantages would include shared tooling, a cross-platform GUI, and the ability for end-users to modify the code.

Regarding size, it appears to be around 100 MB, so you could have 20971 separate installations of it before filling up a 2 TB drive.

Memory usage could be an issue, but whether that matters will depend on your audience the app. In this case, the aim is toward HN, so it doesn't seem like an issue.

While I hope flash drives will come down in price, who has a 2TB flash drive right now? My entire desktop OS, with at least three web browsers, multiple sdks/compilers etc take up a grand total of 15GB. Granted, that'd still leave room for 150 "apps" in the same space (note that I actually only have 3GB free, though). Still, 100 MB for what is essentially high-level code? It's absurd.

[ed: Not directed at op, as such, just how silly the general node ecosystem is currently]

On the flip side, that's 10 full installations of Doom, which is my standard measure of software size.
You get to use a similar kit that you're already using for webdev.

For example, the only time I've maintained a proficiency in both a webdev stack and a native kit was when I was paid to work on both full-time.

Node's main appeal to me is a similar consolidation: using one language. At least until I find out I'm immortal.

You are not the only one. But not because of Node (which is not that big) but because of Electron.

That said, the big issue is that we don't (yet) get to share Electron installs. If all desktop applications had to bundle all their dependencies, including what the OS already provides to them, they would be just as big.

Electron apps themselves aren't that big. Even Atom.

Electron really should be treated like `node` and be a dependency. Of course you could still package your apps with Electron, and you can do that with node too (if you wanted to), still nobody distributes node applications like that.

Actually, I tried fixing that problem with `asv`: https://news.ycombinator.com/item?id=10244073

Smaller apps would probably benefit from an electron-like system that just uses the inbuilt system browser. I'm not aware of any such projects, though.
Well done on making this, but I have to say that I'm sure I'm not the only person that's not interested in installing node on their desktop.
In case it's helpful,

  hacker-menu$ node install
  module.js:338
      throw err;
            ^
  Error: Cannot find module 'hacker-menu/install'
      at Function.Module._resolveFilename (module.js:336:15)
      at Function.Module._load (module.js:278:25)
      at Function.Module.runMain (module.js:501:10)
      at startup (node.js:129:16)
      at node.js:814:3

    > node install
It's `npm install`
Ah, the bug was between the ears. Thanks.

The app seems pretty nice. I wonder why people are saying harsh things?

From: https://hackermenu.io/ "Do you have the habit of jumping to comments before reading an article? We got you covered. Comment is just one click away. So is vote."

I did a quick browse and search of the source on github for "comment", "vote" and "login". How do you handle logging in/submitting comments/votes? Just present the regular hn login inside the app, and use the hn site?

I thought there was some TOS/gentlman's agreement that APIs only had read access to stories, and one needed/should use the hn page for comments/votes? Perhaps I'm mistaken?

I suppose there's no rule against making a custom browser though -- while a bit heavy handed, I suppose there's really no difference between wrapping node+electron and enhancing the UI/UX with greasmonkey -- I suppose the main issue is to behave closely enough to a regular web visitor, so as not to put undue strain on the service, not demand that every visitor actually uses a general purpose browser...?

That's a pretty cool idea... but do people really want more HN? My impression is that most people want to read it once or twice a day, but are driven to it more often than that as attempts at procrastination. So this seems like it'd be a net loss for most users.
That's exactly the idea of Hacker Menu. You could check the news anytime by just clicking it, but it's not distracting
But it's tempting. My hypothesis is that it's too tempting.
You should watch for the menu icon to change to dark color then :). Thanks for sharing your thoughts. btw
Can you add the 'save to pocket' as well, that would great.
Ugh provide high quality screenshots, both on project readme in github and on the website as well.

Currently the website has skewed image of the thing and then cropped round images of the thing.

Ugh, quit complaining and put in a pull request. It's open source and a side-project, after all.