56 comments

  • numpy-thagoras 4 minutes ago

    Most code is throwaway, even to you.

    Most code will quickly be obsolete anyways, even for you.

    Most code you write will be torn apart by often the harshest critic: yourself.

    People who chase others' code just to copy it and not to understand it will not get anywhere, especially today.

    Share for your benefit first, and share often. That's how I have found my gems, even for code I've written.

  • delaminator 4 hours ago

    Truth: no-one really cares about your code

    We publish code so others can see it, the lazy and the productive.

    Lazy people do not prosper, so don't waste your energy thinking about them.

    Why do you want to publish yours, just as a portfolio? Then make a portfolio.

    • hinkley 27 minutes ago

      See I see this a different way.

      People only read your code when something is wrong, which means they’re already annoyed before they get to your bit and if your bit is also annoying you’re going to either hear about it or get frozen out because if it.

      This is at least 4x more true of tests. I’ve witnessed too many PRs where obvious problems in the tests get missed and are then found during the RCA that covers the outage the shitty tests didn’t prevent. Trying to fix a bug in someone else’s code and discovering just how terrible they are at writing tests is salt in the wounds.

    • hirako2000 2 hours ago

      Do you see no value in publishing the code behind items in your portfolio?

  • stevedsimkins 20 minutes ago

    I definitely think it’s worth sharing, especially if it’s version controlled. By making small precise commits you’re proving your steps of how you got to the end result. Even if someone copied it you still have the receipts of how you got there.

    In math, half the work is proving how you got the answer. When it comes to proving your worth as a programmer, I’m a firm believer the same principle applies.

  • noir_lord 4 hours ago

    One of the things you learn as you get older is other people don't think about you (or at all) as much you think they do/will.

    We are often our own worst critics - put your stuff out there, there is little to lose and some upside, if someone likes your demo and clicks through to see the code and can see it then that's a low friction path, by having to request access most people won't or will - but forget all about it etc.

    • sodokuwizard 4 hours ago

      thank you , yeah I think im overthinking this

      • tchalla 3 hours ago

        It’s a well studied psychological phenomena too.

        https://en.wikipedia.org/wiki/Spotlight_effect

      • lelandbatey 3 hours ago

        Echoing what others have said: just post your stuff. If you're not intentionally publicizing yourself or your work, I can nearly guarantee that no one will ever even look at your work. I've been putting up my little personal projects up on my GitHub for over ten years, and yet no one's ever come around to look at them except when I intentionally posted links to those projects on places like HN.

        No one's going to look unless you ask them to look. If you already have a big audience (over 100+ people daily using things you've built) no one is going to "get curious" about your projects. So just post them so folks can see them.

        • MrDarcy 22 minutes ago

          Even if you ask people to look they won’t look. You really gotta sell yourself and have an influencer mindset to motivate someone to go look at code you’ve published.

          This is it should be. It takes time and effort to try someone’s idea.

          Regarding the fear someone does take it and claim it as their own. Who cares? You’re in no worse of a position than the code being private and then not doing it. It’s not relevant.

  • beej71 2 hours ago

    As an instructor, I think you should have your stuff private while you're a student in a particular class. Just share the repo with the instructor. The reasoning is that if someone steals your stuff, it's often hard for an instructor to tell who stole from whom. And that's just trouble you don't need. Yes, you can argue commit histories and all that, but why bother?

    Once you're out of the class, there's no reason to keep it private in my humble opinion. The answers to everything every instructor gives in school is out there somewhere. And AI can solve most of them.

  • reactordev 3 hours ago

    With LLM’s now, odds are, they’ll just copy pasta that code. Yours may be similar but if you slap a license on it, most people respect that and will adhere to it.

    That said, fear of someone stealing your code is completely unfounded as there isn’t really anything novel we produce anymore. If you are on the bleeding edge, you welcome input and PR’s from others to make it better. Only wise men know they know nothing. Collectively, we can build some amazing software.

    Now, if you’re trying to build a business off of your software, you may want to keep that to yourself and not share it. If your business isn’t the software but your service, there’s no harm.

  • al_borland an hour ago

    I wouldn’t worry about students. They won’t be hurting you, only themselves. If the goal is to learn, they aren’t learning. This will either mean programming is a random class they’re taking, not their career, so who cares… or they’ll have a really hard time later in life when they will need to sink or swim in a real job, having not first developed the skills. That’s not a problem for you.

    It’s also much more likely they will go to AI these days; the odds of them searching and landing on your repo to use are almost 0. If they do, I imagine most schools would scan for direct copies of existing code.

    • jjmarr an hour ago

      It's considered my responsibility to protect my labwork at my school, and I could get in trouble if someone else plagiarized it from GitHub.

      • al_borland 31 minutes ago

        If that’s the school policy, then there is no fear to get over. Keep the repos private to comply with policy. That makes it easy.

  • tlarkworthy 27 minutes ago

    U put something out on the internet, likely no-one cares, sometimes people will point out a better way of doing it. You gain in that knowledge. I learnt a lot from public critique... it makes you better and more knowledgeable. Harness the crowd, let it out.

  • softwaredoug 3 hours ago

    > I worry about other students being lazy and just ripping my hard work and claiming it as their own. That really pisses me off when I hear some horror stories like that.

    Make the code part of your professional marketing. It’s not code for code sake but to enable you to blog, speak, etc about something interesting. Then there’s little chance some theoretical thief is also communicating those ideas. And if you’re good at evangelizing yourself it SHOULD happen that someone steals your code. If anyone looks up the ideas, they’ll be inundated by content you created. The code is secondary.

  • stephenlf 2 hours ago

    Don’t worry about others. Just share your stuff. Here is who will look at your code:

    1) unusually good interviewers. These will glance through your repo for 30-120 seconds, checking for a) clear code style, b) clear ideas, and c) good documentation. Nobody but influencers will do a DEEP code review of code they’re not being paid to review.

    2) people on HN or Reddit if you write an interesting blog post and link the underlying code.

    It’s usually true that we are our own worst critics. This is an order of magnitude truer for developer portfolios.

  • benoau 4 hours ago

    Reminds of the thought experiment, "if a tree falls in a forest and no one is around to hear it, does it make a sound?"...

    People you never heard of are open-sourcing projects you'll never find every day, there are hundreds of millions of repositories on GitHub and very few of them will ever be seen by humans who didn't write them, let alone humans looking to pretend they did.

    Presumably someone looking at your portfolio will be reviewing CVs to hire? I think throwing up a barrier on them evaluating your code will hurt you much more than the rest of the world being able to see it.

    • sodokuwizard 4 hours ago

      thats very true , and a good way of looking at it from a practical perspective

      thank you

  • latexr 4 hours ago

    I’ve had several people steal my open-source code for different projects before. I’m talking copying (not cloning) the whole thing, changing the credit to their name, making no other modifications, and then republishing on their account.

    Fortunately they never gained much traction. The ones I know about I blocked on GitHub with a note. No idea if they ever found out or if they tried workarounds, but I figured there’s not a lot more I could do about it and it’s not worth the headache.

    I continue to share openly.

    • sodokuwizard 4 hours ago

      do u find it typically only happened on projects that gained traction in the first place?

    • wahnfrieden 3 hours ago

      What license did you use? Most licenses require that forks change the name, few require credit except for original copyright headers, and no licenses require modification

      • teddyh 2 hours ago

        > Most licenses require that forks change the name

        I was under the impression that the opposite was the case; that requiring a name change was extremely rare, but some historically important free software packages had it (one such being LaTeX, IIRC), so it was, somewhat grudgingly, considered acceptable. But no normal licenses (like BSD, GPL, Apache, etc.) requires name changes today, AFAIK.

        • wahnfrieden an hour ago

          I was mistaken. GPLv3 only offers a provision to require it. Firefox also requires that the name be treated as a protected trademark. I don't know how clearly one gains rights to names of open sourced projects with typical trademark policy though. I've tended to change the name on my own forks if I am not forking just to contribute upstream, out of caution for trademark (even if unregistered) and general reputational hazards of becoming a public face for someone else's project under their chosen name.

          edit: Looks like the reality is quite complex: https://google.github.io/opencasebook/trademarks/#license-te... this goes into detail on each popular license

  • JamesBarney an hour ago

    Unfounded I don't know.

    But if you're taking the time to build out side projects I'd open them so you can put them on your resume. Doesn't make sense to me to hamstring your resume so some kid you don't know gets a slighter better score in some cs class.

  • dusted 10 minutes ago

    Think about it for a moment, what do you lose from someone copying your stuff ? What do they lose ?

    If people insist on staying ignorant, let them, it won't hurt you, but it will them.

    Just put your stuff out there if you think someone might find it interesting or useful.

  • alyxya 3 hours ago

    > I worry about other students being lazy and just ripping my hard work and claiming it as their own.

    Is the main concern that you have a class project you don't want other people taking credit for as their own? I wouldn't bother sharing standardized class projects that future classes may give again, and those projects don't mean much anyways. Your portfolio should ideally be projects that are something more uniquely created by you.

    Also, what's specifically the issue with other students taking credit for your work as their own? In a school setting, it should be pretty clear who committed their code first. If it's for future employers, the most important thing is demonstrating full understanding of the project while being able to discuss it.

  • exox 3 hours ago

    "What It Means To Be Open" by Lu Wilson is well worth watching:

    https://youtu.be/MJzV0CX0q8o?si=aVmlJNuSlSyjomQa

  • sholladay 2 hours ago

    If someone else steals your work, you should be proud. They found it to be valuable. If they managed to sell it or build something with it, they’ve demonstrated that you can do the same. Use it as a learning experience.

    Keep in mind that you are in control of what people are allowed to do with your software. By default, your code is unlicensed even if it is public, which means no one else can distribute it or change it or do much of anything with it. Thus, if someone uses it and claims it to be theirs, you can sue them if you want to.

    However, instead of leaving your code unlicensed, I would recommend choosing an open source license and applying it to your code when you make it public. There are many to choose from!

    By applying a license to your code, you are establishing a clear framework for what other people are and aren’t allowed to do with it. And it’s legally enforceable. In fact, there are organizations that may step in to help you if someone violates your license or challenges it in court. For example, my preferred license is the Mozilla Public License. If someone tried to challenge me on any part of that license, Mozilla would have a vested interest in defending it, since it’s their license and they use it, too. Their lawyer is even available to chat with over email. I once reached out to ask if I could make a small tweak to the license without causing headaches. They got back to me within a few days and said it would be fine. That gave me a lot of confidence to continue using it.

    Some licenses are very permissive, such as MIT. Others are much more restrictive, such as GPL. The MPL, which I use, is somewhere in between.

    What’s right for you really just depends on what you consider to be fair. And every project can be different. Maybe you build some small tools that you release under MIT, essentially donating them to all of humanity. Meanwhile, you create a startup and build a product where you keep some of it private and release parts of it publicly, licensed under the GPL, because you don’t want huge corporations stealing the work for your day job without reciprocating. That’s a relatively common approach.

    Whatever you decide, just make some of your code public. The feedback and experience will be well worth it. Good luck!

    • ivanjermakov 2 hours ago

      > If someone else steals your work, you should be proud

      “Imitation is the sincerest form of flattery that mediocrity can pay to greatness.” ― Oscar Wilde

    • coherentpony 2 hours ago

      What a wonderful comment. It was educational and friendly without holding my hand too much.

      Thank you.

  • munificent 3 hours ago

    As someone how has spent several years in therapy in part related to anxiety, the answer to "how do you get over the fear of X" is "do things that incrementally approach X".

    https://en.wikipedia.org/wiki/Exposure_therapy

    There's really no other successful approach I've seen for curing anxiety. You have to just steel yourself and do the thing you're afraid of. It gets easier every time.

    • lanstin 2 hours ago

      An inconvenient truth. It can even become fun, but no guarantee. (I just gave an hour long presentation to a couple dozen people, and was looking forward to it, which was what would have happened ten years ago).

  • INTPenis 2 hours ago

    How do you get over your fear of anything really? Build up your confidence.

    If you know who you are, what you're capable of, you won't let other people's opinions hurt you.

    It comes with age and experience. I don't mean programming experience either, life experience.

    One can also focus on the end goal and drop that foolish pride. The goal is to have a working product, all help is welcome.

  • PaulKeeble 2 hours ago

    In the age of AI it will at the very least be laundered through various commercial interests into commercial for profit tools. Depending on the license you intended to release the code under (and you should read into the various licenses and what they intend to achieve and protect and what they don't) that may or may not matter to you, but it is happening.

    Fundamentally most code goes no where, no one shows much interest unless you release a hit project. It can however be really impactful in interviews and recruitment, if your code is readable and well tested and such then it can be quite a positive for the right types of organisations. So at some point you may very well want to make it public for this purpose.

  • snayan 3 hours ago

    People have already given you practical reasons why you're better off keeping it public. To answer your question as to how to get over your fear, you need to ask yourself what you're afraid of. You've mentioned you're worried about someone ripping off your hard work and claiming it as their own. If you can understand the root of why the idea of that pisses you off, you will probably find it's an artificial construct of ego. Understand the root and the fear will loosen it's grip.

  • fsmv 3 hours ago

    People can fork my code all they want but to anyone actually paying attention it's obvious mine is the real one. If theirs is actually better and they actually put in more work then so be it.

    But in reality the original is often the best updated and the forks will fall behind because they have to merge your changes and you don't have to do that.

  • sys_64738 2 hours ago

    I recall in a college programming course in the late 80s where the professor would humiliate those who wrote terrible code riddled with mistakes. The other students didn't appreciate that but it didn't make them work harder. They just tried copying each other and everybody else eventually realizing I could program better than most. So they'd sit next to me and try to get me to help them in class. Needless to say I gave them incorrect advice and they got screamed at by the woman Prof. Made me realize people will take the easy way out.

  • MikeNotThePope 2 hours ago

    My recommendation is don’t internalize negative feedback from people who won’t make the time to work with you to improve. Absorb knowledge on people who invest in you.

  • lolc 2 hours ago

    Haha I've had instructors noting with a smile that my code was "good enough for others to copy". In the end I learned a bunch, also about people. More than if I hadn't shared.

  • epolanski 3 hours ago

    You should be happy that anybody at all bothers looking at your code.

  • bradly 2 hours ago

    You can open source your code without explicitly sharing it. I started putting out the source code to my side projects and no one cares about it really. Is someone ripping it off and not respecting the license? Who knows… it’s a big internet and probably won’t negatively affect my life.

  • hirako2000 3 hours ago

    You would be surprised how code you've published is in fact not read by anyone. You would equally surprised that many do read the README.

  • drbojingle 3 hours ago

    If it's not open source then don't make it public but if you want to lose your fear, just do it. It's not like it matters that much.

  • nmilo 3 hours ago

    I mean this in the best possible way but your code is not special. Plagiarizers are gonna plagiarize and if not from you then from the other 1000 open-source student-friendly portfolio projects. Career wise you should be building up your GitHub ASAP, anyone can make a fancy looking frontend or whatever you do but I can’t know if someone is good without looking at the code (and I would probably never care enough to go out of my way to request it).

  • malux85 an hour ago

    When you’re a junior it’s natural to overvalue your code, because you’re still learning this incredibly complex thing called programming, and that code took a lot of effort to produce!

    But the actual truth is that the code itself is nearly worthless. The important thing is who you became when you wrote it. You learned interface abstraction, api design, how to debug, how to execute it in your head, the tooling, and most importantly you got that spark of pure joy when it finally worked.

    If others copy your code they get none of that, they only get the little worthless bit, they might win a battle (cheat on an assignment) but they will loose the war (they don’t grow or experience joy) so don’t worry about it, they will flake out, while you grow and reach for even greater things!

  • voidfunc 2 hours ago

    Older programmer: Nobody gives a shit about your code and nobody thinks about you as much you think they do :)

    Practically it may be worth keeping code for a particular class private for the duration of the term, semester whatever so you dont get into a sticky situation where a classmate copies it and now youre defending against plagiarism and have to prove to the professor you wrote it first.

    But really beyond that, nobody cares.

  • BiteCode_dev an hour ago

    The others students will get code from chatgpt way faster than from your code.

    If you are afraid that people will think this code is not yours, sign your commits, it's unlikely they will take the time to clone your repo and remake it with new signatures.

    But honestly, if it's such a source of stress for you, don't share it. It's ok to not share code. There is no rules that say you have to.

    Just because most of us are into FOSS and open source doesn't mean we will less of you if you are not.

  • siva7 3 hours ago

    You're severely overthinking. The Code isn't important. It's what you build with it that people care about.

  • incomingpain 2 hours ago

    What do you fear?

    > worry about other students being lazy and just ripping my hard work and claiming it as their own.

    First of all, the cheaters will never read you, they'll just use AI.

    Good news, your code is likely to never be read by anyone but you.

    "There is only one thing in life worse than being talked about, and that is not being talked about." — Oscar Wilde

    By being private, you're just not being talked about.

    >I was thinking the alternative would be just linking my demo on my portfolio site as a proof of concept that yes I made it, yes it works, and if you're curious , here's a link to the code u can request independently of github.

    I'll give you an even better path. Use AI to make something of size. Build in public. Who cares, if someone steals it, they are only stealing from AI and could have just gone to AI to begin with. If you get criticized, they arent criticizing you, they are criticizing some version of an AI model.

  • cpursley 2 hours ago

    By sharing it.

  • kissgyorgy 3 hours ago

    Scott Hanselman have a good blog post about this suggesting you should detach yourself from your code: https://www.hanselman.com/blog/you-are-not-your-code

    Especially true when working as an employee where you don't own your code.

  • deafpolygon 3 hours ago

    same way you get over a fear of anything: exposure

  • bluedino 3 hours ago

    Wait until every line you write has to be code reviewed when you get a job.

  • neilv 3 hours ago

    I think the thieves you worry about are actually going steal your code through LLM laundering, without even knowing who it was stolen from.

    If you're not going to do a startup with your code, you probably need to focus on a mix of learning and self-promotion. With the market prioritizing self-promotion. Which probably means just trying to make sure that code that reflects well on you, does so.

    Which probably means making it it open source, even if AI training data companies will steal it and give it away.