HNHacker News
TopNewBestAskShowJobs

mstudio

147 karma · joined January 29, 2014

https://www.linkedin.com/in/alex-motzenbecker/
submissionscomments
mstudio··on Show HN: OnlyRecipe.app – Remove clutter from recipe sites
Nicely done! I just ran into this "clutter" issue last week while trying to read a recipe that kept auto-scrolling due to a pop-up ad intermittently changing height at the top of the page. Some quick feedback: it worked perfectly for a recipe at "simplyrecipes.com" but was unable to find a recipe on the Food Network, specifically: https://www.foodnetwork.com/recipes/alton-brown/creme-brulee... Keep up the good work!
mstudio··on Ask HN: Most life changing things that you bought?
- Fitbit tracker with heart rate monitor (the model I have is the Fitbit Charge).

- Cordless drill/screwdriver.

mstudio··on Video Games Are the Future of Education
I disagree with this sort of thinking. I do see that there is some value from video games, but there are also certainly drawbacks. There's plenty of research confirming that handwriting helps people learn and process information. There's nothing wrong with lectures and worksheets. One early childhood handwriting study is here (https://www.sciencedirect.com/science/article/abs/pii/S22119...).

Anecdotally, I see many drawbacks in using video games for learning. With my kids doing remote-learning, most of the math is taught/practiced with math games -- most of these have advertisements. It's so easy for kids to tab to another site/app that's more interesting. I can only imagine that if I had YouTube a click away from my studies as a 12-year-old, I'd get absolutely nothing done.

I also disagree that learning always needs to be "fun" and that we have to sugar-coat everything, including education, for kids. I don't understand why we can't teach kids to deal with difficulty -- to work on learning -- and then be proud of themselves when they've accomplished something.

mstudio··on Seven years later, I bought a new MacBook. For the first time, I don't love it
I suggest that you buy on eBay and filter by "New", which is what I did with mine. I verified that it was unused by going to Apple > About This Mac > System Report. Then select "Power" and look for the "Cycle Count" under "Battery information". This will tell you how many times the battery has been recharged. It should be a very low number. I think mine was 0 or 1 when I bought it. eBay is also pretty good about returns if anything is wrong with the laptop. Good luck!
mstudio··on Seven years later, I bought a new MacBook. For the first time, I don't love it
Totally agree. After reading so many reviews panning the new MBPs, I ended up replacing my ancient 2011 MBP with a 2015 model. You can still find new/unopened or relatively unused models on eBay. I love this laptop. i7, 16GB memory, AMD Radeon R9, great keyboard with F-keys... plus, it has all the standard ports I need: USB, HDMI, Thunderbolt. All for much less money than a new machine from Apple. No complaints at all.
mstudio··on A Critique of React Hooks
This does not work. setMyState() is asynchronous. doSomething() would run, but not necessarily with the updated value of the state.
mstudio··on A Critique of React Hooks
I have some similar gripes. I find Hooks to save a bit of coding overall. I've found my functional components to be about 10-20% smaller than my class components. I'm not 100% convinced it's really worth it, though.

With class components, my state/props are clearly defined within the constructor and/or PropTypes. This makes it easy to understand the overall architecture of a component. Functional components with Hooks don't have the same sort of structure and can be difficult to understand at a glance.

One of my gripes with Hooks is that listening for async state updates requires more code/complexity than w/classes. In a traditional class component, you can add a second, optional argument as a callback which is called when the state has updated:

  setState({ myState: 'newValue' }, () => { this.doSomething(); });
With Hooks, that doesn't apply. The useState "set" function doesn't have a similar argument.

  setMyState('newState');
Instead, you need to use 'useEffect' with an optional argument:

  useEffect(() => { doSomething(); }, [myState]);

This leads to potentially having many "useEffects" scattered throughout the component.

That said, this is just my experience with Hooks after a few months of working with them. It's entirely possible that I just haven't had enough experience with them yet.

mstudio··on Why did Slack win out over IRC? (2018)
This article is comparing apples to oranges. IRC is a protocol, Slack is a client/app that uses protocols (one of which used to be IRC). Many IRC clients, although beloved by some users, are rough around the edges.

In my opinion, Slack has "won" over other clients because of UX: it's extremely easy to sign-up, understand, and use productively. Plus, even large orgs (ours included), can use the free version if they're OK with having chat history disappear after a few days/weeks.

mstudio··on Shell Productivity Tips and Tricks
fishshell is my favorite productivity enhancer for the terminal: https://fishshell.com/

The primary reason I chose over zsh/bash was that autocompletion just works. If you install it, I highly recommend oh-my-fish as well, which allows you to add packages for look/functionality: https://github.com/oh-my-fish/oh-my-fish

If you're a zsh user, they have a similar framework: oh-my-zsh: https://github.com/ohmyzsh/ohmyzsh

mstudio··on Show HN: Glycemic load calculator
Very interesting! I can't speak to the accuracy of the data, but the overall app is quick, simple and easy to use. One minor UI suggestion: in the live search results, perhaps color code the GI, as you do on the results page. e.g. for "Apple", "GI:38" would be in Green to denote "low" instead of Teal.
← PreviousPage 2 of 2