Thank you. I've opted to forego data editing in the app for now, but a path exists to make that a reality. My priority is to allow people to experiment and build on the foundations I've laid here however they see fit. One benefit of the current API is that any data source can easily be integrated.
HN user
clumsycomputer
https://clumsycomputer.com
ive ejected out of the next ecosystem and work in preact now. some of the optimizations being adopted across react and next had me worried about insurmountable lock-in! with that said vercel's github integration is a beautiful thing that i will continue to use. the automated preview deployments are just too clutch
love these type of optimizations... blurhash seems to be giving me more pleasant results that thumbhash on the few examples i ran through it! thumbhash seems to over emphasize/crystalize parts of the image and results in a thumbnail that diverges from the source in unexpected ways.
either way this is awesome, and thanks for sharing
this would be fuckin magical
Looking for product manager / dev role at small startup
typescript react ui ux
Colorado
unfortunately don’t have permission to download, but love the style very much! hopefully i’ll remember to try it out in the future when i get a chance
for those interested in a typescript / react alternative checkout https://github.com/clumsycomputer/clumsy-graphics
howdy hn,
laid out in the link above is a number of concepts dealing with the generation and analysis of discrete rhythms.
there is also a reference implementation of these concepts written in typescript
this has been a labor of love and curiosity, which started out with the goal of helping generate algorithmic art. along the way it has become an art in itself, and believe there are many applications outside of art where this can be applied. i most interested to hear from others how this might be used within cryptography and data encoding
if anyone has the the time to look through these concepts and chat, id be grateful
https://www.clumsycomputer.com/software/resume
https://github.com/clumsycomputer
location: colorado
remote: yes
relocate: yes
i'm a balanced frontend developer who has worked on a variety of products across several companiesmy free time is focused on developing, maintaining, and sharing open-source software that assists developers in their creative pursuits. you can checkout the packages i've released at https://www.clumsycomputer.com/software/packages
i'm happiest when collaborating with others, and really enjoy the process of iterating on a problem until an effective/understandable solution is realized
“A Day in the Park” is beautiful
i would love to add this type of functionality to my own music collection over at https://www.clumsycomputer.com/curations/music
im not really sure how feasible that would be though since its essentially just a a bunch of links sourced from a variety of music services, the most prominent being youtube
perhaps it would be possible to extract the audio data from the video stream, compute the key in a web worker, and then queue up a transition
anyhow this is tight
bravo
howdy y'all,
was looking for a simple way to explore and play with signal generation, and think that creating wav files is the most straightforward and robust way to go about doing just that. in order to scratch that itch i've implemented a function that takes a sample rate and channels data (mono or stereo), and returns an ArrayBuffer of the corresponding structured wav file.
implementing this package was a quick and fun process, which gave me the opportunity to learn about packing bits in the browser. whenever time allows in the future (some amount of years, hopefully not decades), i look forward to implementing a similar function for png files
i love charts like these
typescript, my favorite piece of tech!! thank you typescript team :)
my pleasure, feel free to reach out with any questions
not really an FFT approach, but you can take a euclidean rhythm or really any discrete rhythm for that matter and compute its slot weights. checkout https://github.com/clumsycomputer/clumsy-math#rhythm-slot-we... for more details.
you can use a rhythm's slot weights to set a wave's amplitude, phase, or frequency. just need to decide on some continuous <=> discrete mapping
this is great
ive been fascinated by euclidean rhythms for the past 10 years or so, and while playing with the pattern ended up coming across a more general flexible abstraction built upon euclidean rhythms that can generate every rhythm, which ive laid out over at https://github.com/clumsycomputer/clumsy-math#recursive-eucl....
euclidean rhythms are also great for generating / selecting musical scales and chords among other things
having worked with engineers, can confirm not an engineer yet the titles say differently... indirection sucks most of the time
that sounds like something i haven't tried and may yield results
gracias
its at least cubic, but the loop here is generalized farther where the sub circle can be phase. so i don't know???
linear search in angle i believe, though depending on the use case i hold onto the index of the last matched point making the next search O(1)
thanks for introducing me to the secant method. at the very least it will help me think about it differently
thank you for the pointers
i don't have much formal math training, but have used scipy a handful to times successfully for other problems. optimize is new to me, but ill throw some things into and see what comes out
awesome thanks for the recommendation
my only worry about curve fitting is that the recommended function won't generalize to other loop configurations
hi gus
the animation is something i constructed in order to help facilitate discussion and get help :)
i've outlined the computations more detail in a reply below
by constant time i mean O(1)
computing the white dot currently requires me to sweep the already computed loop points which isn't a big deal in a lot of use cases, but with audio its a show stopper
the white dot is also the key to a much more complex computation that im using
i have an implementation that does something along those lines, which suffices for graphics but doesn't work well for audio applications. think 48 000 samples per second.
the computation i've outlined in the animation is also just a small but very important piece of a much more complex computation
this white dot is my bottle neck
i'll do my best
1. define the base circle (orange)
2. define the sub circle (pink)
3. compute the range of the intersection circle's radius (blue)
4. compute the loop points (yellow)
4A. compute intersection circle along range defined in 3
4B. compute the intersection angle between base and intersection circles relative to the center of the intersection/sub circle (law of cosines)
4C. compute the intersection point with intersection angle (green on blue & orange)
4D. compute sub point with intersection angle (green on pink)
4E. compute the loop point with the x component from intersection point (4C) and the y component from sub point (4D)
5. compute the trace point at trace angle (white) 5A. trace the already computed loop points searching for the the two points where the trace angle fits between
5B. compute the intersection between the line composed of the two matching loop points and the trace line originating at the sub circle's center with an angle of the trace angle
its a generalization of the drawing by Fritz Hügelschäffer linked belowhttp://www.mathematische-basteleien.de/eggcurves.htm#:~:text....
your reply certainly gives me hope that its possible, though i fear i've stared at this diagram for too long and am having difficulty viewing it with a fresh perspective.
some additional context.
im constructing the loop (yellow) with the black dots, which im computing in constant time. the dynamic circle (blue) is being constructed from the two static circles (pink, orange). the white dot is currently being computed by sweeping the already computed loop points from the center of the small circle (pink).
are there any laws or key points that may help me along? are there any similar problems that are well documented that you are aware of?
thanks
haha fair question... i'm hoping to find someone who will donate their time as i am doing myself. its important that improvements to the current solution i have remain in the open and free to use. otherwise said help may be counterproductive and even destructive
howdy hn
for a couple years now ive had an itch to curate my favorite music outside of the major music platforms in order to facilitate sharing with my friends who are all devoted to different apps. finally i got to scratching last month and am pleased with the first iteration. its uncluttered, straightforward, and provides flexibility in how the music is organized/categorized
the app is built with nextjs and is currently frontend only. im not entirely sure what the next step for this project is. there is a good chance it will remain as is for the foreseeable future with the exception of adding more music. however depending on the feedback, i may continue iterating and possibly even split out into a dedicated service for others to take advantage in an easier fashion than forking
a link to the code below:
https://github.com/clumsycomputer/clumsy-website/tree/produc...