Hacker News new | ask | show | jobs
by swayvil 2028 days ago
A kisrhombille-ish shape-grammar based l-systemly 2d geometry building system. For pretty pictures or whatever.

https://github.com/johnalexandergreene/Geom_Kisrhombille

https://github.com/johnalexandergreene/Forsythia/tree/master...

2 comments

Please post again directly as Show HN. I would love to see more community response and add ons to your work, and find the next serendipitous connection.
Oooh, a wall of pictures, even better!

In all seriousness, Wow, this is really cool. Reading through the readmes was admittedly less interesting :) than firing up the editor, getting confused for about 2 minutes, then going "oh" once I got the relationship between metagons and jigs, and that the kernel was basically a placement system based on a rule engine combined with a solver. Coool.

This is admittedly very over my head :) (I may or may not have tried deleting most of the metagons to see if I could start with with simpler layouts, but then I just got handed lots of single-metagon renders instead.)

This makes me think of a bunch of a different categories of Android apps:

- "paint by number" thingies that let you passively "color" pictures by matching up numbered colors with a pixellated numbered grid based on a supplied image

- pattern generators that let you create your own wallpapers, quite a few based on tesselated designs ("geometric pattern" and "tangram generator" are good keyphrases; "wallpaper pattern" also seems to weed out lock-screen pattern generators)

- active wallpapers that display graphical effects of different kinds

- "geometric drawing" apps that generally use some kind of rule system as the basis of control

There are likely other general categories I'm not thinking of.

This system doesn't directly fit exactly into any of the boxes defined above, but the apparent widespread popularity(?) for the above kinds of apps may suggest the existence of a target demographic that might like being available to play with this kind of thing on a phone or tablet. The only consideration is the learning curve.

I cannot deny that I'm describing several months/subprojects-worth of work to port the renderer to run within Android, replace the AWT/Swing UI with something that would be intuitive on touchscreens of various sizes, figure out what crowd(s) to make the app appeal to (eg, solely technical focus, or general passive/"arty" demographic)... but if you ever wanted to showcase the project further, given that the architecture is already written in Java, an Android port almost seems like a shoo-in answer. (I'd actually forgotten it was written in Java when I went "ooh, I want to play with this on my phone.")

Hmm; I made a wall of text to say "port this to Android". I'm more trying to say, "if you have the motivation, porting to Android may have positive results". :)

Thanks for sharing. It's very cool to see the results of sticking to/studying/exploring the depths of the implications of a specific rule system for as long as you have.

I'm glad you like it.

When the whole thing came together and was working I lost the fire for it. Really have no urge to work on it now. Believe me, I've tried too much. Cold wet ashes.

But it's been well smeared around the world and I'm pretty sure what I've found won't be lost. So that's good.

I'm on a totally different project now. Meditation basically.

So, greetings fellow artschool alumnus. What's your big computer project?

It's very interesting.

I can understand being done with something as complex to reason about yet fundamentally self-consistent (ie, lacking novel/unexpected details to discover). Heh, "cold wet ashes" is more interesting than "old chewing gum", I might borrow that :)

Perhaps someone could file "port to Android" on GitHub and tag it "good first issue for newcomers"... xD

At the end of the day, you stuck in there and finished it, and cold wet ashes are arguably better than fire drenched in burnout. (Ooh. That fell out nice. What's the meta equivalent of a rhyme?)

Meditation is interesting. I'm trying to figure out my brain as well. It's so weird; not only is every brain's user manual uniquely different, every single one is also written in a different long-lost language. And so the reverse-engineering process has to come up both with the content and the language. It's so annoying. :)

As for my "big computer project"... I somehow got the idea that "I shall solve the UI problem!" (......woops). Over the past few years this has slowly (and initially painfully) morphed and rounded out into a general interest in psychology, human focus, the understated/unintuitive amounts of friction produced by network effects, and how hard it truly is to solve for holistic, cohesive design that allows us to reason about complex ideas in ways that are intuitively instinctive.

The OCD about UI design started around 2003. I think I was 12, heh. It took from around 2006 to 2011 to go from "I shall make a new terminal!" to "eeh... the only winning move is not to play" when I kind of properly integrated the significance of obsession ("I must figure this out now") vs true interest ("I want to figure this out properly"). Developmental delay is fascinating. I guess my big project (if I could sign off anything at this point) was, uhh, growing up.

I still remain interested in the field of UX design, and continue to reduce ideas to their basic building blocks that I can objectively use for parts on a regular basis. So far I have a few fairly boring ideas that I might be able to commercialize at some point (into a field that already exists, but could do with better integration); if that fails, I'll just go back to the drawing board and start again. One of the more relevant things I've learned thus far is that trying really hard to make something work "because it has potential", without being able to reason through that "potential" end-to-end, is something to avoid like the plague.

(As for school, that didn't quite work out, mostly due to process failures surrounding institutional incompetence.)

Also. I just gotta tell you what a metagon is. Because it's cool and simple.

A metagon is the essence of a polygon. It's the definition of a polygon minus information pertaining to location, orientation, scale and chirality (handedness).

Huh. I may or may not be slightly more curious about geometry than I was before :)

Thanks. I think. (uhoh)