As a counterpoint, I find the web version pretty great on iOS. Minimal JavaScript, loads fast, everything on one long screen, and the back button always works, leaving you exactly where you left off.
It is a nice counterpoint to overly heavy web that we have unfortunately gravitated towards.
I've been doing the same on Android for a some time now. Before HN was responsive, I preferred native apps for presentation, but the good ones lacked voting, commenting, etc. Honestly the web client is quite usable on mobile now.
Just installed it, used it for a few hours, loved it, and deinstalled it. Here's why.
First, no downvote action. We need this to push down trolls and sockpuppets.
Second, voting is inside a menu, yet this is a really common action.
Third and worst, when I use a browser on HN, every single link now asks me to select an app. Not once, but for each different link type it seems. After the fifth time (choosing 'Remember my choice' each time), I was so annoyed I uninstalled Materialistic.
No downvote is a known issue, partly because I can't test it, so I'm not confident I'll deliver a reliable feature.
I agree that upvote should be more visible. Currently it's available as an option tucked in popup menu, as well as via swipe gesture, which is not very discoverable.
3rd one is a feature called 'deep link' which is quite common in Android. It should remember your choice if you choose 'Remember my choice'. I don't know what went wrong here as it is a platform feature and out of my control :(
I found it very useful and really liked it, just these problems were so irritating I dropped it again. I'm hoping you can fix this, because I have trouble with reading HN on a browser, with its tiny font size.
I suspect you've got a bug with the deep link feature because other apps only show this menu one time. Yours shows it over and over.
While we're talking, I also found the UI rather busy with stuff that seems unnecessary. Half the fun with HN is its simplicity. If you ever get the urge, think about doing an Apple and removing stuff that people don't use.
Nice work, anyhow, and thanks for that. Consider making a paid version of the app with no differences, except you get some money back from it.
Thanks! Would be helpful if you can share your device info so I can try to reproduce that issue. If you still keep the app around you can just send an in-app feedback and it will automatically include such info. Or you can reply here. Or if you can email me, my email should be available on Play Store listing.
No, I don't think you can fix the 'remember choice' feature. Practically all apps ask me for that when I click on a domain I haven't clicked on before. 'Remember' will only remember the choice for that domain.
> Third and worst, when I use a browser on HN, every single link now asks me to select an app. Not once, but for each different link type it seems. After the fifth time (choosing 'Remember my choice' each time), I was so annoyed I uninstalled Materialistic.
That's Android's fault, not the fault of Materialistic. I have the same problem totally random on my phone, too.
Disable card view (which is the default for new installations) + choose smaller text size would achieve more or less the same. I have already gone thru few iterations of compacting the UI and I'm afraid I can't squeeze it anymore :(
Thanks for the reply. I really like the "comment search" feature in Relay based on time (show and jump through comments added in last X minutes), words (jump through comments that contain certain words), jump to comments based on author (OP, me), etc. There are many more comment search parameters, but these are my favorite.
I already have similar request in my backlog. This is gonna be tricky, because I don't have all comments up front as they are loaded on demand (even for saved comments - loaded on demand from cache).
I have something similar in mind but haven't get started yet. It can be done via HN API, but it can only be done at regular interval (polling), as I don't use Firebase but raw web API.
Not op but I use both Relay and Materialistic and I find myself swiping from the left to get back to the main page after reading the comments (muscle memory after using Relay for a long time). It would be great if you could incorporate this into your app. Either way, its a great app!
While I think it's the best of what's available, it still misses some features. No downvoting, no flagging, preformatted text gets mangled, and the own comments/conversations view is not ideal.
I plan to implement downvoting but I'm not sure of the logic involved (I don't have enough karma to test it myself). Probably I'll add it to a beta channel and let users help test it.
Performance can be laggy and is something I'm trying to improve.
I've been using this for a at least a month now and it's really great, and I'd almost rather browse HN from Materialistic than the site itself.
If there's anything I could change, it would be to add a setting that turns off swiping when I'm inside a story (to switch between comments/article/readability) along with swipe vote/reply for comments.
I just cloned the repo, opened it in Android Studio and after a few version tweaks in its Gradle setup, it sprang to life on my Nexus. So I can attest that it's painless to clone and build it, which in my experience with open source is 95% of the battle (where the other 95% is getting the PR accepted :-/ )
>So I can attest that it's painless to clone and build it, which in my experience with open source is 95% of the battle
This has been my experience often times as well. Especially when it's node/ruby/python projects that expect the privilege of dumping files all over my global file system. Anyway, there's no excuse for un-reproducible build environments like that these days.
All of my (new) projects have exactly two requirements: `make` and `docker`. Everything else needs by the build environment is handled by nature of using docker. `make docker-dev` drops you in an environment with build tools installed, with the project source code mounted as a volume so you can use all your normal tools on the host.
Why doesn't YCombinator just fix the mobile style sheet for the website?
It's pretty clear the site is terrible on mobile, and it's not a hard thing to improve. Make the font bigger, and (especially) make the buttons much, much bigger (or further apart).
Actually - why don't they fix that on the desktop version? Fitt's law and all that.
Indeed. And stop doing whatever crazy CSS thing is used to implement the upvote/downvote arrows and just make them images in an href. Why? Because on some touchscreen browsers there's a fuzzy snap to nearest link, which turns a press on the upvote into a click on the username.
My own personal solution to this was to write an intercepting proxy in Perl CGI like it's 1999. Then I can fix the HTML with regexes.
Have you tried MiniHack? After shopping around a bunch of iOS HN clients I like that one the most. It's ad-free, feature-rich but not bloated, responsive, and somewhat customizable.
What does the word "Materialistic" have to do with Hacker News? I did a web search to see if I'm missing something, but it looks like it's just a name that does not fit.
How about "Hacker News client by Trung", or "Trung HN" for short.
When I created it material design was a hot thing, so I just randomly came up with that name. Now it's not relevant anymore but I keep the name to avoid confusion for existing users.
I was stumped multiple times trying to find this app under apps starting with letter "H" on my phone. Moved it to home screen now, but the name can definitely be improved.
I quite like your app. It's way better looking and serves my functional purposes of reading and voting. Of course improvements can be made - it's an iterative process. More power to you.
Big fan of Materialistic here. By far the best Android HN app I've found. Didn't realise this but I must have downloaded it just after you put it on the play store. Even the first versions were solid.
No shopping list of features :). Just wanted to say good job (posted with Materialistic)
1. The vote up status seems to get reset or so it seems from the app. I had invited this post yesterday, by today the thumbs up icon color was black again. It looked as if I did not vote this thread. So I clicked on that, and then the thumb icon was green. Then I went back to the main page, and remembered to type the following point. So I came back to this thread and the thumb icon was black again. It looks as it the app is remembering if I have already voted for that thread. Does HN allow one to vote any article multiple times?
2. I like the concept of the navigation overlay. But can you please add an option to disable the vibrations each time that button is used? It gets pretty annoying after navigating few comments.
1. I can't sync vote status so it's only a best effort at the moment to let you vote. Of course after the 1st vote is recorded subsequent votes will not count. This for sure can be improved.
2. Sure. I added vibration because I tend to mis-swipe so I added vibration to give me some feedback. But I understand not all users may like it.
Its a great app.
A couple of things that would make it even better:
- a refresh button
- an "are you sure you want to quit" warning when I click the back button.
Trying it out and liking it so far. I've noticed it does make my phone (Droid Turbo) heat up. May be from the frequent data reloads while I'm scrolling.
It's nice, but I don't like how the comments view wants to keep scrolling sideways. I wish it worked more like the articles view with swipe to vote. I'll never use the readability mode so I'd love to just disable it.
Appreciate the effort. Ive had lots of issues with other open source HN apps. This one looks and works great so far. Would've loved an fdroid release, but an open app with github releases is more than can be said about most other apps, so no real complaint there.
Same. I discovered a setting that brings up a little arrow pad on comment pages, so that I can swipe up/down on it to go to the previous/next comment at that level in the tree, and left/right to go out/in a particular comment thread. It's extremely useful for e.g. skipping over long comment threads I'm not interested in.
This is great! Although, I'll shamefully admit that after just doing the Konami code and seeing nothing happen, I went so far as to take a look at the source to get the last step. :)
You did indeed get a 5-star review out of it, though :)
You're correct. Saved/bookmarked stories have been there way before HN has favorite. I'm thinking of syncing these two, but it's not very straightforward without API support.
It's a nice app and I've been using it for some time, but one thing that's always bothered me is the strange scrolling / caching behavior of the app. A quick scroll down displays a blank page while content is gradually "plugged" in. I don't think I've ever seen this odd scrolling behavior in another app.
It's because stories/comments are loaded on demand. If you never scroll to it it won't be loaded. It was designed this way partly due to how HN API works, which doesn't provide all data up front.
Alternatively app can aggressively load everything up front, which is slow; or paginate content. To me it tends to feel faster when u have progressive UI change (empty card then fill it) than abrupt change (completely empty then all items appear), so I decided not to paginate.
I used another app called HN before yours. It did not have this problem. TBH I'd rather have it aggressively load all the content. It isn't that much data and the current experience is frankly jarring.
I also can't seem to figure out how to consistently jump to the next top level parent comment with the nav button. It seems to jump to other comments lower in the current thread which I'm trying to skip past. Am I missing something?
Overall love the app though. Love that I can click a user name and see their profile.
One other odd thing is when I open a HN Notify email link telling me I have a response, I can't figure out how to go up a level from the response comment to my parent comment they responded to in order to remind myself what I posted.
I already did some optimization to load 1 extra page of comments in advance, which I believe should improve the experience. I also tried the same trick for stories but got some janky issues that I need to figure out first.
Swipe down the button should go to next same level comment, or if none it goes to the next one, which is the 1st child.
User-related content support is quite limited at the moment as I need to crawl HN web for that.
Do you have any user data on whether people would prefer the downswiping went to the next comment at the same level, or the next parent regardless of if they are currently on a child?
My use case is that I'm scrolling and I get bored with a thread. It isn't much different to swipe up on the thread to scroll down further if I wanted to keep reading, and there is no easy way to just jump to the next top-level thread. I'm left either having to collapse several levels of comments to condense things, or scroll until I hope I find the next one and don't miss it.
At the very least, I feel like this should be configurable behavior for the button.
But again, this is just me, so you might have data saying people want otherwise, and this is free so I shouldn't complain :)
It's the 1st version of on-screen navigation so for sure there are rooms for improvement. I think of it as a D-pad, as in games, when you make selection with D-pad, down means selecting below item. I can make a toggle option to reverse scroll direction though.
It is a nice counterpoint to overly heavy web that we have unfortunately gravitated towards.