For many of us, there's no real reason to work full-time, cutting your expenses and working less is great. Also: it's economically irrational how little time we spend optimizing our investments vs. our salary/work-skills (i'm still a sinner).
I'd say all the terms are wrong: you've covered maker, hacker also has nothing to do with this, as well as indie, which means being alternative, outside the mainstream. I believe you're looking for "Independent Developer"
I changed the title of my post to try to make it a bit more clear who the target audience is.
I agree that the real meaning of the word "hacker" has almost nothing to do with independent software or digital product development, but my experience is that many people started to use it to identify those who are using their knowledge to "hack" together digital stuff. Not to mention hackathons where everyone is a "hacker".
Probably there should be more series like Mr. Robot so people would get a better picture of what real hackers are doing :D
I do something similar, but my flow is around feature branches: I create a branch, dumping TODOs in the code as I work out the feature, then progressively fix them before merging the branch. Wrote a little script to highlight TODOs created in current branch (vs base) if anyone's interested: https://github.com/yonilevy/branchtodo
Coincidently I just started working on a drawing app, specifically an iPad app with figure drawing as the main use case. If you could share more details on the kind of drawing you'd like to allow it'd be easier to help. In general, as others said, there's a big difference between vector and raster based drawing apps. In vector drawings, you need to capture the mouse/pen/touch input and fit the points to a bezier curve (google "An algorithm for automatically fitting digitized curves"). Then you have a bunch of bezier-curve objects and draw them to the screen, any 2D graphics library will support this. Raster based drawings are more tricky, you usually paint with a brush, which is a bitmap that gets blended to the existing drawing, possibly affected by the input (pressure, angle, etc.). Here your focus is on performing graphics operations efficiently, as there are many of them per second, and they should appear to occur in real-time. A GPU is very helpful to this kind of drawing.
Another big aspect of this sort of app is undo/redo support. Again it's gonna be different between vector and raster, but I find that in any undo-supporting app, figuring out how the undo mechanism will work can guide the rest of the software design quite effectively, so give that a thought.
If you're willing to share more details here I could probably help more concretely.
In a nutshell, I want to be able to hand draw on top of existing (pre-installed) images and I want a fill tool that will add textures, patterns or even bits from a photo in addition to plain color.
I would like it to have a tool set similar to Microsoft Paint. I'm very comfortable with Microsoft Paint and have used it to make hydrology maps for college classes. Sketchbook kind of has too many tools while (so far) failing to actually do what I want.
Maybe I will figure out how to do this in an existing program, but it looks like if I can, it would involve brute forcing it. I want something more convenient that gets results of a certain quality level without me having to treat every illustration like a masterpiece intended for a fine art gallery.
I have some art skills, but I'm not super talented. With the right tools, I can create quality illustrations and graphics, but freehanding everything is an excessive burden and an obstacle to productivity.
This. As an iOS user / developer who isn't too familiar with Android, I also don't get it. Either these reports are lacking, and there is in fact a vulnerability being exploited down the line, or Android is completely broken. I find it odd that this important detail is being ignored in the reports/discussion.
I assume AppCode will support this the same way it does with InterfaceBuilder and Storyboards - i.e. it won’t do anything but launch XCode to handle it.