176
51

Why is learning C so much more generally useful than learning React? What I mean by the last point is that learning C tends to develop skills that are useful in a lot of other parts of software and tech work: if you know how to write decent C, you'll have a much easier time of understanding PostgreSQL internals, for example, while if you've learned React, it's anyone's guess as to whether or not that'll actually improve your HTML skills, for example.

177
13

I launched my first product on Product Hunt recently, and while it definitely wasn't the launch I'd imagined, it taught me a lot.

Like most first-time founders, I thought the hardest part would be finishing the product.

It wasn't.

The hardest part was getting people to discover it.

Looking back, here are my biggest takeaways:

Building a good product isn't enough. If nobody knows it exists, they can't use it. A launch lasts one day, but an audience takes months (or years) to build. I underestimated how important it is to consistently share what you're building before launch day. Comments were more valuable than upvotes. The feedback I received highlighted things I hadn't noticed while building. Marketing is a skill. I used to think marketing meant "posting a link." Now I realize it's about telling a story that makes people care. The launch wasn't the finish line. It was just another milestone.

I didn't hit the rankings I was hoping for, but I don't regret launching.

It gave me feedback, exposed weaknesses in my product and marketing, and reminded me that building a startup is a marathon, not a single event.

For those of you who've launched on Product Hunt (or any similar platform), what was the biggest lesson you learned from your first launch?

178
12
179
26
The computer at the bottom of a canal (negroniventurestudios.com)
180
-21
181
25
A History of IDEs at Google (laurent.le-brun.eu)
182
13

cross-posted from: https://lemmy.blahaj.zone/post/45574613

Hello, I built a CLI that gives you web links for stuff in your repo you might want to link to.

You know the situation. Your coworker checked in some real garbage and you want to politely ask what they were thinking. But now you gotta describe where the code snippet is and they have to open it in their text editor and so on. Alternatively, you could open up your Git forge's webpage and navigate to the file, copy a permalink and send it to them. Also takes quite a bit of time.

With the CLI, you can instead just paste the local file path and it gives you the permalink right away.
Similarly, you can also get a direct link to an issue or PR, which's number you might've found in a commit message.

There's a release available for download for Linux x86_64: https://codeberg.org/trem/forge/releases
And if you've got the Rust toolchain on your system, then you can also install it like so: cargo install --git https://codeberg.org/trem/forge

P.S.: The implementation is somewhat hacky, because a Git repository doesn't really know what webpage it was cloned from. So, please do let me know, if you run into any issues.

183
13
submitted 1 month ago* (last edited 1 month ago) by CoderSupreme@programming.dev to c/programming@programming.dev

Building a small social platform. I want users to post complaints/ideas, upvote the top issues, and have devs tackle the top 3, transparently with tags, milestones or kanban to show what stage each issue is at.

Need one self-hosted FOSS tool (or two that integrate well) for both discussion and voting/prioritization.

What's your recommended stack? Zulip, Fider, Discourse, Forgejo...? Something else?

Thanks!

184
17

Somewhere in the last year, a bunch of us who hadn’t shipped real code in years quietly started shipping again. Not reviewing it. Not architecting it in a doc and handing it off. Actually building it. And loving it.

I lead software for a living. That means my days are meetings, roadmaps, hiring, unblocking people, and saying “no” a lot. The last time “writing code” was my actual job was a long time ago. I never stopped being able to code — I stopped having the time to code. At least in my day job. There’s a difference, and every engineering leader reading this feels it in their bones.

185
27
submitted 1 month ago* (last edited 1 month ago) by CoderSupreme@programming.dev to c/programming@programming.dev

One of the main features of my site will be Discourse-style trust levels, the higher your trust level, the more moderation privileges you gain. I'm also considering either a jury system, where multiple users collaborate on moderation decisions, or a meta-moderation system, where users can vote "fair" or "unfair" on moderation actions taken.

Someone mentioned to me in another post that Bluesky also has a very good moderation system, but the best one I've found so far is Discourse. What I really like about it is that you earn trust levels by reading posts, not by taking moderation actions. I definitely don't want to gamify moderation the way Stack Overflow did, that was the worst I've ever seen.

186
79

cross-posted from: https://sh.itjust.works/post/63615439

The reality of how much damage AI mania is doing to our ability to run institutions effectively.

187
17
188
16
189
9
190
84
Regressive JPEGs (maurycyz.com)
191
81

Working with lots of changes in parallel on git can be painful. You end up juggling branches and commits, and running scary rebase -i commands that can leave your tree in a half-broken state if you so much as sneeze.

jj, an alternative to git, gets discussed a lot these days (1, 2, 3, 4) and is often pitched as a solution. While I’m very sold on the problems jj is trying to solve, the way it solves them hasn’t quite hit home with me. Every 3 months, for the last 1.5 years, I try it out for a few days, really trying to make it part of my workflow but eventually I give up and go back to git.

That’s where git history comes in.

192
24
Evan's Jujutsu Tutorial (evmar.github.io)
submitted 1 month ago* (last edited 1 month ago) by HaraldvonBlauzahn@feddit.org to c/programming@programming.dev

Jujutsu, to capture it in one sentence, is a modern front-end to local git repositories, which is a radical, but powerful simplification.

Here are his reasons why jujutsu might be worth a try.

This text was all written by hand by Evan Martin, a human. I used no AI, and disclaim this in particular so that you can expect that the choices made in what to mention, what to leave out, and in what order were carefully considered.

Nice.

193
28
194
6
195
189
submitted 1 month ago* (last edited 1 month ago) by sacred_font@infosec.pub to c/programming@programming.dev

I pinged every IP address that wasn't reserved. The image is 8k by 8k and is re-encoded as an AVIF to be friendlier to mobile devices. Like every other survey done, it is using a Hilbert Curve to convert the linear address space to a contiguous 2d space. The hotter the colors (blue is coolest), the denser the ping responses were.

(If you are interested the full-resolution pyramidal-tiled TIFF can be downloaded and viewed in QuPath on desktop. I've also compressed the ping response data into its own format down to about 150 MB. PM me for a link)

Non-proxied image

Here is a 2006 survey to compare.

Some observations: Big Tech (USA) is in the top left. US government allocations, for the most part, did not respond to any pings. And maybe you didn't realize this before, but Multicast (Class D) & Class E consume a whopping 12% of the IPv4 range.

196
12
Poems, an .ISO puzzle (wii.sjmulder.nl)

Over the past few days I've been building up this little file format hacking puzzle. It's a bit niche, but I hope the sort of people who're into this kind of thing might really enjoy it, so that's why I'm sharing it here!

(Yes, the Wii has no HTTPS yet, I've been busy building silly polyglot, quines, games and now a file format puzzle 😊)

197
38
submitted 1 month ago* (last edited 1 month ago) by CoderSupreme@programming.dev to c/programming@programming.dev

The pattern is always the same:

  1. Someone passionate creates a community
  2. Early members are deeply invested — high-quality discussions, strong norms
  3. Community grows, hits the front page / "all"
  4. New users flood in, post memes, low-effort content, drive-by hot takes
  5. Old-timers get drowned out
  6. Mods either burn out and quit, or become dictators ruling their own fiefdom

Reddit's model accelerates this. Any subreddit that gets popular enough hits the All feed, and at that point the incentives shift from "quality contribution" to "what gets upvotes from the broadest audience." The people who built the community lose control of it.

I'm working on a social platform and I'm trying to design communities that don't go through this lifecycle. This is what I have in mind right now. A user's voting power within a community is proportional to their tenure in that specific community. So if someone's been there for 2 years, their vote counts more than someone who joined yesterday. No matter how many new users show up, they can't swing the community away from the people who built it.

The weighting wouldn't be dramatic, maybe a logarithmic curve where the first month gives you baseline power and it grows slowly over years. The goal isn't to create an aristocracy, just to make sure the signal from committed members isn't buried by a flash mob.

Implementation-wise I'm thinking:

  • Each community membership has a joined_at timestamp
  • When scoring a post within that community's feed, each boost/vote is multiplied by log2(days_since_join + 1) / log2(30) — so 1 day = 0.05x, 30 days = 1x, 1 year = ~1.7x, 5 years = ~2.1x
  • The algorithm still surfaces new content to everyone, but the ranking is weighted toward longer-tenured members' tastes
  • Also considering: a slow-boot period where new members' posts are held for review by existing members (like a probation phase)

But I'm second-guessing myself. Some concerns:

  • Does this just create a gerontocracy where old members gatekeep forever?
  • How do you handle the first 30 days when no one has much weight?
  • Would this actually prevent the decay, or just slow it down?
  • Is there a simpler/better mechanism I'm missing?

Curious what other approaches people have seen work (or fail). Has anyone implemented tenure-weighted voting before?

Edit: I appreciate the suggestions. A few of them actually align with features I’ve already built:

  • Trust graph: The platform already uses directed trust edges, with vouching and inviter accountability (if an invitee misbehaves, the inviter is penalized). I can extend this model from the platform level down to individual communities.

  • Invite-only mode: I already have trust-based monthly invite limits for the whole platform, so adding the same option for communities seems like a natural extension.

  • Slow-boot / probation: This is already in place, new members’ posts are held for curator review before being published.

  • Different interaction types: The system already supports multiple interaction types (like, comment, share, gift, emoji). I'm not sure how to expand these into Slashdot-style categories (e.g. agree/disagree, insightful/funny, quality/shitpost, high/low effort, etc.), but it's something I'd like to explore.

  • Moderation limits: I like Slashdot's approach of limiting moderation to prevent burnout. I'm less certain whether meta-moderation would be a good fit here, but I'm open to considering it.

198
-12

Few weeks ago I wrote about a side project that I'm using to learn, this is my reviewing what I missed on the project, the main issues after a few dozen games in the platform with friends. And what I learned in the process.

All comments, feedback is appreciated.

199
29
submitted 1 month ago* (last edited 1 month ago) by HaraldvonBlauzahn@feddit.org to c/programming@programming.dev

Bringing that back to tech debt: a simple kind of high-interest short-term debt would be committing code without tests or documentation. Yay, it works, ship it! And truthfully, maybe you should, because the revenue (and customer feedback) you get from shipping fast can outweigh how much more bug-prone you made the code in the short term.

But like all high-interest debt, you should plan to pay it back fast. Tech debt generally manifests as a slowdown in your development velocity (ie. overhead on everything else you do), which means fewer features launched in the medium-long term, which means less revenue and customer feedback.

[...]

Bankruptcy

The tech bankruptcy metaphor is an easy one: if refinancing doesn't work and your tech debt continues to spiral downward, sooner or later your finances will follow. When you run out of money you declare bankruptcy; what's interesting is your tech debt disappears at the same time your financial debt does.

This is a really important point. You can incur all the tech debt in the world, and while your company is still operating, you at least have some chance of someday paying it back. When your company finally dies, you will find yourself off the hook; the tech debt never needs to be repaid.

Okay, for those of us grinding away at code all day, perhaps that sounds perversely refreshing. But it explains lots of corporate behaviour. The more desperate a company gets, the less they care about tech debt.

200
31
view more: ‹ prev next ›

Programming

28295 readers
163 users here now

Welcome to the main community in programming.dev! Feel free to post anything relating to programming here!

Cross posting is strongly encouraged in the instance. If you feel your post or another person's post makes sense in another community cross post into it.

Hope you enjoy the instance!

Rules

Rules

  • Follow the programming.dev instance rules
  • Keep content related to programming in some way
  • If you're posting long videos try to add in some form of tldr for those who don't want to watch videos

Wormhole

Follow the wormhole through a path of communities !webdev@programming.dev



founded 3 years ago
MODERATORS