carlnewton
carlnewton on Hacker News
I've just moved away from hosting on AWS to buying a refurbished Dell Optiplex 5060 and installing docker compose on it. Traffic comes in using a cloudflare tunnel. The only costs are electricity (it's very low power and virtually silent) and the domain (if you need one), and I'm thrilled with it.
Posted by
carlnewton on Sunday March 01, 2026 @03:20PM
from the show-hn dept.
https://github.com/carlnewton/habitat
Habitat is a free open-source, self hosted social platform for local communities. It is aimed at fostering local community discussions and discovery of areas of interest. This is why it is built primarily around location. A Habitat instance centers on a specific area, and the local community can make generic posts about that area, or they can make posts about specific locations in that area.For...
I enjoyed Piranesi by Susanna Clarke the most this year. It has wonderful world building that was reminiscent of The Library of Babel. I'm currently really enjoying We Are Legion (We Are Bob) by Dennis E. Taylor. So far it's a very fun spacefaring adventure.
Every time I see a title like this, I ask myself if I'm not being open enough, if my biases are interfering with any potential progress I could be making when it comes to utilising AI. Then I find out that the content is just more slop and it further solidifies my position on all of this. What a waste of energy. It really saddens me.
Yeah I think established Facebook groups are probably the biggest hurdle. To me, the benefits of not using Facebook are self evident, but a lot of people don't know about the issues around that or don't care. I think creating features that can't be achieved on Facebook could help. Outside of that, I think it's just a matter of providing meaningful content yourself. For Plantshare, I imagine it would be beneficial to be close to you because you, the developer of the app, presumably have a wide variety of plants because that's your interest. And if it's a success for you and your local community, you've succeeded, and any other pockets of success are a bonus. This is at least the way I'm looking at my project here. I still do intend to continue to work on the open source side of things though of course.
For some reason I've been really enjoying stories with endless and well described repeating rooms. Borges' Library of Babel got me started, I have just finished Susanna Clarke's Piranesi - which was so wonderfully described, I don't know if I'll find anything to beat it. I'm now on A Short Stay in Hell by Steven L. Peck, which outright mentions Borges' novel. If anyone has any similar recommendations I'd love to hear them.
Since writing this comment I've given it some more thought and decided that I wasn't being constructive enough, so here's something a bit more positive:
Given the issue described above, if we were to add a translation task to the player, this would feel more like a puzzle. For instance, if instead of a downward facing arrow, we had a blue tile. Blue tiles move down, orange tiles move left etc. This way, we can use the exact mechanic you've built here but start the player off with a 1x2 grid, and progressively grow to a larger grid with more colours/rules. This to me seems more fun than what it currently is, and it lends itself to a more compelling art style -- even Tetris pops with colours. Going off the art idea I had in my previous comment, perhaps blue frogs are always eaten by the frog below them, green frogs are always eaten by the frog to the left of them. It could be called Frog Eat Frog or something.
Wishing you the best of luck with your project.
Hey, I hope this comment doesn't bring you down. You asked for feedback with the aim of doing better -- I'm not going to pull my punches.
In my opinion, your game isn't performing well because the gameplay isn't very compelling. In best combo mode, I can see a grid of arrows, I'm informed that clicking one of these arrows will clear more than the others. It says that I should find "creative ways" to clear the grid. I'm not sure that such a thing is possible. At worst, this is a game of guess the 1/25 arrow to click. At best, it's a game of tracking backwards through the arrows. As somebody who enjoys puzzle games, I don't personally find this a fun mechanic.
My initial thought was that the art might be the problem. That perhaps if these were frogs that ate each other in order or if these were bubbles that popped in a satisfying way, this might be more enjoyable, but if you haven't got compelling gameplay, dressing it up isn't going to help. My recommendation is to focus on creating challenging and enjoyable gameplay first.
Perhaps play some other puzzle games and ask yourself what it is you're enjoying about them.
I couldn't quite tell from the wording of your question if you want to hear from developers who avoid the use of AI as well, so sorry if my comment here is unwelcome in the discussion.
I'm a senior web developer and help maintain hundreds of PHP repositories for work. I avoid the use of AI as best I can. When I do ask questions to an LLM, I feel that I'm partaking in a dirty habit that I should quit. I don't have anything for that installed on my machine/integrated in my IDE. I feel that using LLMs to understand and solve problems is unreliable, a barrier for my personal development, a threat to the future of the industry I work in, unfair to those who wrote the content it is trained on, and bad for the environment.
I also largely feel the same way about other AI products, such as image generation.
Intuitively it seems likely that alien life would exist elsewhere in the universe, but I tend to favour evidence over intuition, and I haven't read any compelling evidence. The Wow Signal might be the most interesting thing we've observed in that regard, but it's still not enough for me personally.
I'm a web developer in my late 30s. I've been working mostly with PHP for the past 8 years, but have been a web developer since 2009.
I was looking into a syntax error. It seemed to be taking issue with a line that looked fine to my eye. Copying and pasting the line resulted in the error, but manually typing it didn't. I started pasting fragments of the line about to find out what it took issue with and it was just a function name. Something like getResults. While I sat there scratching my head, I mindlessly tapped the left and right arrows on my keyboard over the characters and noticed that I'd have to press twice to get between two of the characters. This was my introduction to the zero-width space.
Posted by
carlnewton on Saturday July 19, 2025 @12:49PM
from the carlnewton.github.io dept.
Perhaps I'm not educated enough with blockchain to see how it can help with Habitat, but I'll investigate it, thanks. I'll also look into geohashing. I've never heard of it before, but I have been thinking about the issue of multiple posts for the same location and how to deal with that, so geohashing might certainly help with that. Thanks again.
What a great idea! Thanks!
I've been working on Habitat for the past year and a half on my own. It's a FOSS self hosted platform for communities to discover what's in their local area.
I'm using PHP/Symfony, Docker Compose, Ansible, Leaflet JS/OpenStreetMap, HTMX, Cypress, TipTap, Dropzone, PhotoSwipe, Bootstrap
If you have experience with any of these, it would be wonderful to have some help.
- The idea: https://carlnewton.github.io/posts/location-based-social-net...
- A build update and plan: https://carlnewton.github.io/posts/building-habitat/
- The repository: https://github.com/carlnewton/habitat
- The project board: https://github.com/users/carlnewton/projects/2
I've added some "help wanted" and "good first issue" tags to some items in there.
Hey, I just wanted to pop in here and say thank you for the work you've done with Tiptap. I was thinking about adding an editor to the project I'm working on for a long time and I just assumed that I'd have to use something like CKE or TinyMCE, and only recently found this minimalist approach. It's a perfect fit for what I need.
Ah yes, the way I was thinking of it, I was only considering the variations of one pixel in each position of the image, not combined. Thanks!
This is really interesting thought. Could someone help me understand where I'm going wrong? Because I assume that Sloot made the same mistake that I'm making here, and I'm struggling to understand the Shannon's source code theorem article, so I'm thinking in practical terms:
If you wanted any movie in 1080x768, and wanted to have it in full colour, that would be 16,777,216 possible colours per pixel, so the number of IDs in your sequentially generated noise database would be 16777216 * 1024 * 768 = 1.319414e+13. This is where I think I might be misunderstanding something, because that number in decimal form is apparently 13194140000000, which means every frame will have an ID that is only 14 digits long.
Where have I made the mistake in concluding that I could store any 1024x768 image in 14 characters so long as my computer could generate an image of that ID?
Edit: I've just realised that 1024x768 is not a standard resolution, but I suppose the point remains with 1920x1080
I love that! Climbing a mountain would be such an arduous task, impossible even! But taking another small step can be fun and easy. Keep having fun, and if you find yourself at the very top, look for another mountain.