HNHacker News
TopNewBestAskShowJobs

mcao

250 karma · joined March 19, 2011

submissionscomments
mcao··on Umami is a simple, fast, privacy-focused alternative to Google Analytics
Bot detection is enabled automatically.
mcao··on Danish Data Protection Agency concludes Google Analytics cannot be used lawfully
Yes, if you display a custom 404 page.
mcao··on Astrofox – Turn Audio into Videos
Yes, the UI is all from scratch. My inspiration was from seeing other audio-reactive videos on Youtube, but those were rendered with either Adobe After Effects or a 3D program like Blender. I wanted to build something that was easy for the average person to use.
mcao··on Astrofox – Turn Audio into Videos
It's open-source so you can see how everything is done. The audio processing is all done with Web Audio APIs.
mcao··on Astrofox – Turn Audio into Videos
I haven't looked into it so I am not sure if it's possible. The requirement would be for Electron to be able to run headless with WebGL enabled.
mcao··on Astrofox – Turn Audio into Videos
If you simply drop in a song, it will render in realtime. You don't have to render it to a video. I am working on a "live" mode that will act much like Winamp, where you would select a playlist of songs and have it cycle effects.
mcao··on Astrofox – Turn Audio into Videos
Video is not currently supported but will be in the future.
mcao··on Astrofox – Turn Audio into Videos
Hi everybody, I'm the creator of Astrofox. Surprised to see this here, but I'll be glad to answer any questions.

Astrofox has been my side project for several years now. It's basically my playground for trying out things like Electron, React and WebGL. It's open-source, MIT licensed, and totally free to use.

mcao··on Google penalizes you for using Google Analytics
You can use an open-source alternative like https://umami.is/
mcao··on Winamp Skins Collection
Cool! I found the skin I made way back when, https://archive.org/details/winampskin_SpyAMP_Professional_E...
mcao··on Show HN: Plausible – Self-Hosted Google Analytics alternative
https://umami.is/
mcao··on Umami: Self-hosted open-source alternative to Google Analytics
I actually am using it to record metrics for umami.is:

https://app.umami.is/share/8rmHaheU/umami.is

I'm using it for all my websites. The reason I went with another site for the demo is because I wanted something with at least 30 days of data so users can play around with the different settings. Once I get enough data, I'll switch it over.

mcao··on Umami: Self-hosted open-source alternative to Google Analytics
This may just be me, but I'm very particular about my software. I want it to look and flow a certain way. So I wrote Umami mainly for my needs first. Plus it was just a fun project.

I always start side projects so I can learn something new. In this case it was Prisma.io, Chart.js, Next.js authentication, JWT and Postgresql. All of which I didn't know about until this project.

mcao··on Umami: Self-hosted open-source alternative to Google Analytics
Fair point. I was simply following the "common practice" from other products making these claims, which is to not store personal user data and only generate an anonymous ids.

Maybe that's not fully compliant, I don't know, so I went ahead and removed any mention of GDPR from the website. It's not really my goal anyways. I'm just trying to release free software while they are charging money and making these claims.

mcao··on Umami: Self-hosted open-source alternative to Google Analytics
Agreed, saying it's a one to one alternative to Google Analytics is probably a misnomer. I think a lot of people, myself included, used GA because there were no simpler alternatives and better overkill than nothing.
mcao··on Umami: Self-hosted open-source alternative to Google Analytics
I will switch it over at some point. I've been running it on my own sites for a month so I just wanted to provide an example with more data to play with.
mcao··on Umami: Self-hosted open-source alternative to Google Analytics
I will probably implement the daily salt and remove the localStorage code as well just to be safe.

But again, I'm not a lawyer here, where do you draw the line? Why not hourly salts? 5 minute salts? What is considered a reasonable effort? At some point you're storing data that can identify a user for the purpose of analytics. Still, I'm going try to lean to the safer side as best I can.

mcao··on Umami: Self-hosted open-source alternative to Google Analytics
For personal projects I tend to write all the CSS and components myself. I just like being able to control everything down to the pixel without reading some documentation. But that's just my workflow. I say just use whatever gets the job done. The only thing I used was Bootstrap grid for responsive layouts. Tailwind CSS is pretty popular.
mcao··on Umami: Self-hosted open-source alternative to Google Analytics
This is my first time ever using Prisma and I'm a huge fan of it already. It did run into a few gotchas and would love to discuss.
mcao··on Umami: Self-hosted open-source alternative to Google Analytics
It uses prisma.io for the database connections and SQLite is supported. I just haven't had the time to implement it yet and make sure all the custom queries are working. I would welcome a PR.
mcao··on Umami: Self-hosted open-source alternative to Google Analytics
Event tracking is already supported in the build. I just haven't completed the UI components yet. You simply add a custom CSS class on an element and it will automatically be tracked.
mcao··on Umami: Self-hosted open-source alternative to Google Analytics
I am not a lawyer so I cannot say for sure what constitutes PII and what breaches GDPR. I am using the same techniques as Fathom Analytics, Plausible.io and other products. Everything is hashed into a unique session id and none of the actual data like user agent or IP address is actually stored. It is the same data that is found in server log files. In the strictest interpretation of GDPR, I don't think any analytics product can exist.

As for the localStorage, it's just for performance so I don't have to recompute the session hash. The product will work the same without it. But seeing as it is a cause contention I am probably going to remove it.

mcao··on Umami: Self-hosted open-source alternative to Google Analytics
Should be back up now, give it another try.
mcao··on Umami: Self-hosted open-source alternative to Google Analytics
Should be back up now.
mcao··on Umami: Self-hosted open-source alternative to Google Analytics
The local storage is mainly for performance. It's to prevent a round-trip to the database to figure out the session again. The session id will be the same regardless and it can function without local storage. But I do see your point. I may consider removing it just to be safe.
mcao··on Show HN: Umami – a self-hosted alternative to Google Analytics
Yes, I'm working on a real-time view at the moment.

The demo was down for a while due to too much traffic. It should be back up now.

mcao··on Show HN: Umami – a self-hosted alternative to Google Analytics
You can create an issue on Github and I'll try and answer, https://github.com/mikecao/umami/issues
mcao··on Umami: Self-hosted open-source alternative to Google Analytics
I haven't implemented it yet, but I plan to make it read the user's do not track setting and automatically opt out.
mcao··on Umami: Self-hosted open-source alternative to Google Analytics
No, it does not use cookies so no cookie prompt is needed.
mcao··on Umami: Self-hosted open-source alternative to Google Analytics
Yes, event tracking is already in the current build. I just haven't finished the UI components or documentation yet. But basically all you have to do is add a CSS class to an element and it will automatically start tracking. Like this:

  <div class="button umami--onclick--signup-button">Signup</div>
Page 1 of 3Next →