Hacker News new | ask | show | jobs
by ddxxdd 2342 days ago
I regret not knowing about cross-platform development such as Flutter and ReactOS.

I also regret not buying a book explaining all the concepts in as simple a manner as possible. As a semi-amateur programmer, I feel like most of the documentation is meant to refresh the memories of people who have been developing apps for years; they're extremely beginner-hostile.

5 comments

> I feel like most of the documentation is meant to refresh the memories of people who have been developing apps for years; they're extremely beginner-hostile.

Yeah, really agree with that; I'm not sure about the state of Google, but the word 'beginner-hostile' is really an exact state of Apple's documentation (well I'm touching AppKit not UIKit, so that's a factor too but...).

Coming from a web background, almost every web framework had a starting point from the documentation or at least some concept documents: Apple's documentation is almost non-existent. The best documentation I could find was the archived ones from early 2010s, and those were not really helpful at all.

I did know Apple's dev experience isn't really great... but what I did not know was that learning Apple's APIs/conventions means watching three and four WWDC videos that briefly touch the API for about two or three minutes, learning two languages together(Swift & Objective-C -- which actually wasn't really that awful for me b.c. I already knew much about ObjC & message passing due to my interest in various (elegant) PLs), & searching for other people's personal projects from GitHub.

Seriously Apple, improve your documentation. It's just plain awful.

It’s really sad as Apple’s “Inside Macintosh” documenting the 1984 Mac was fantastically good and readable, very enjoyable to read.
Can you give an example of beginner hostile documentation?
Agreed. This absolutely kills me when people say “just read the documentation” or “the documentation is very good” as a reason why they don’t produce examples or templates or starter kits. Not all of us are CS majors or programmers in large teams or with decades of experience to fall back on. Just reading the documentation isn’t enough to get me into a new framework or language. I need to see practical examples.

For mobile development, this is why Expo was so crucial for me to understand how React Native works.

Apple used to have a lot of pretty good (not perfect, but pretty good) conceptual/architectural documentation. Most of it has sadly been sunset, and is hard to find, even though it's still largely applicable. And it hasn't been replaced -- hopefully that's just "hasn't been replaced yet".
Apple documentation in the 90s was a piece of beauty. Microsoft's was pretty good too back then with MSDN Library CDs.
This is so true and so sad. It was so good!
> I need to see practical examples

And I need to see diagrams of mental models, though practical examples help solidify that. So one challenge with writing documentation is knowing what your audience needs. A better taxonomy of documentation would help solve this. For now, here is one I like based on https://www.divio.com/blog/documentation/

- Tutorial: A walk through how to learn the basics as you build something.

- Explanation: Showing the mental model of something

- Guide: A walk through how to solve a specific problem

- Reference: A comprehensive* listing of the API capabilities and how they are used.

-------

If anyone knows of some good tutorials or explanations of mobile programming with React, I'd be grateful for recommendations.

Apple seems to be particularly bad for this, I was going through some of their videos recently and everything assumed prior knowledge. It's the same for much of the documentation.

As much as I criticise Microsoft at least they have stuff like this: https://docs.microsoft.com/en-us/windows/win32/learnwin32/le...

To be honest, I think you're being too generous.

The problem isn't that they're providing documentation which is good but only appropriate for a narrow audience. The documentation is just bad: it misses out things that need to be said.

React? ReactOS is the open source version of Windows NT
They probably mean React Native
Wild how few on here note this as an error
To be fair, most cross-platform projects have been total garbage (PhoneGap, Titanium, etc.) Sadly the only one decent was .. Unity, which is why you'll sometimes see things that aren't even games written in it for mobile.