I told my boss I had an idea for a program that could improve efficiency across much of the business, and he let me build it on company time. In the long term, he wanted to be able to sell it to other companies. However, the program never got implemented due to personnel mismanagement, and I’d rather be able to post it on my github under a free licence so I can use it as a resume item, and at least someone would have the chance to actually use it. It’s all still in my head, and I could write it again if I wanted. If I do, is it illegal to publish it? What if I write it in a different language? Do I need to change the variable names? I did plenty of research and planning on company time to build it, and it’s not like I can research it again, it’s all still in my head.

  • hascat@programming.dev
    link
    fedilink
    English
    arrow-up
    16
    ·
    edit-2
    1 year ago

    Check your employment contract. If that includes an NDA or a confidentiality agreement, the company may own your design as well as any code produced. Writing the program from scratch a second time may still end up being company property.

    Given that they didn’t put your program into production, it’s unlikely they would pursue you legally for releasing a new version on your own.

    • thisisnotgoingwell@programming.dev
      link
      fedilink
      arrow-up
      4
      ·
      1 year ago

      IANAL but i’m pretty sure that even without an NDA anything you develop on the job is considered IP of the company. However, as long as it’s not a blatant copy paste(a rewrite), it’s hard to legally enforce that because they have to prove damages. Meaning that if they shelfed the idea/program, even if it’s a blatant copy paste they can’t do anything.

      • Sigmatics@lemmy.ca
        link
        fedilink
        arrow-up
        1
        ·
        1 year ago

        Basically, they won’t bother sueing you unless you end up making millions off it

        But at that point the program will likely not even be reminiscent of its original form

    • lemmyingly@lemm.ee
      link
      fedilink
      arrow-up
      2
      ·
      1 year ago

      NDAs/confidentiality agreements have to be specified in the employment contract or other signed paperwork?

      In the past I’ve joked with my boss that I’m not obligated by NDAs and can say what I want to others. It was a joke but realistically I don’t believe I am because not a word of NDA/confidentiality is in my contract, nor have I signed any other paperwork with it in. But the boss seems to think I am restricted by NDA.

      • Yawnder@lemmy.zip
        link
        fedilink
        arrow-up
        6
        ·
        1 year ago

        There are NDAs, and privileged information. You might not be under an NDA, but depending on where you live you might have constraints on privileged information.

  • BB_C@programming.dev
    link
    fedilink
    arrow-up
    11
    ·
    1 year ago

    Meh, everyone scaring you into thinking you don’t own your own mind.

    Assuming your boss is not the dangerous kind (beyond legal threats), and if the goal is to make it FOSS, then do it using an alias first. Do it differently. Use components/libs/algos from other people at first, even if they are not perfect. Make those parts easily pluggable/replaceable which would be good design anyway. The code then wouldn’t be wholly yours, not even your alias self.

    You can join the project later with your real identity as an interested domain expert (maybe a bit after not working for the same boss). Start contributing. Become a maintainer. And maybe take over after a while. You can start replacing non-optimal components/libs/algos with better ones piecemeal.

    Oh, and if Rust wasn’t the choice of implementation, use it this time.

    • 0x0@programming.dev
      link
      fedilink
      arrow-up
      7
      ·
      1 year ago

      Also, don’t use company hardware; don’t do it during working hours (especially commits - if you’re paranoid, use tor) either; resist the temptation of giving the old code a look, do it from memory.

      • BB_C@programming.dev
        link
        fedilink
        arrow-up
        5
        ·
        1 year ago

        don’t do it during working hours (especially commits - if you’re paranoid, use tor)

        I wanted to mention not using personal emails or committing from home IP addresses, but thought that was needless to say.

      • MachineFab812@discuss.tchncs.de
        link
        fedilink
        arrow-up
        2
        ·
        edit-2
        9 months ago

        “Make those parts pluggable/replaceable which would be a good design anyways”.

        Following best practices = Morally Wrong?
        Sure, fren, whatever you say.

        The only reason OP might not have done it this way in the first place would have been to save the company worrying about licensing, or getting shitty with OP about not using enough orignal/proprietary code to ensure lock-in with future clients … is THAT somehow morally superior in your book?

  • peereboominc@lemm.ee
    link
    fedilink
    English
    arrow-up
    6
    ·
    1 year ago

    It depends in the country you are.

    If you want to show of your skills, why not write an article about it. This way you don’t publish company property (maybe only snippets of code) and the viewer can read your reasons on why you made certain decisions.

    But do not do this without consent of the company. If the company likes it, you could even start your article something along the lines of “here at %company% we like to write good code…”. Than it is a win-win. I see this a lot on sites like medium.com

  • naonintendois@programming.dev
    link
    fedilink
    arrow-up
    6
    ·
    1 year ago

    Not a lawyer, but worked closely with them in the past. It REALLY depends on your employment contract. Changing variable names and language still makes it a derivative work, so it would depend on the original license. I’m assuming it doesn’t have a license which would mean either you or the company owns the copyright: depends on your employment contract. Whether you’re a contractor or full time also affects ownership.

    Without ownership or a license, you do not have the legal right to copy the work or make a derivative of it.

    I’m not clear on whether you actually wrote any code though. If that’s the case (that no code was written) then I’m not really sure how that works out. If you do post it and they find out, AND they’re mad about it, you could definitely get fired. I’m not sure if there could also be legal trouble or not.

    If you need it for a resume item, you can just list it on your resume and talk about it. You could also implement it on your own time (but not share it until you’re sure you’re safe from legal action), that way you could talk about tradeoffs you’ve made, etc. in the real implementation.

    In general, if you’re not sure and you’re worried about getting sued, you should ask a lawyer.

  • Hawk@lemmynsfw.com
    link
    fedilink
    arrow-up
    6
    ·
    edit-2
    1 year ago

    Have a discussion with chatGPT about a program you would like to write, use this to assist the development.

    Evidence this as the source of the program. There is your re-research. It’s likely the implementation will differ substantially as well.

    They might own the original program but it’s unlikely they broad concept.

    • I Cast Fist@programming.dev
      link
      fedilink
      English
      arrow-up
      2
      ·
      1 year ago

      To give it extra safety, make sure that the first person who posts the code isn’t you, just get a friend to act as random anon

  • jadero@programming.dev
    link
    fedilink
    arrow-up
    6
    ·
    1 year ago

    I dealt with a similar situation by simply purchasing the code from my employer. I guess that technically it was a form of licensing, because we both had the right to use, modify, and resell as we saw fit as long as there were no infringements on branding or trademarks.

    They may not offer favourable terms, but it might be worth asking.

  • alonely0@programming.dev
    link
    fedilink
    arrow-up
    5
    ·
    edit-2
    1 year ago

    – Not legal advice-- If you have evidence that it got scrapped for good, even if it’s copyright infringement, they can’t claim any damages. They, at best, can DMCA GitHub, but you’re VERY unlikely to get sentenced guilty in a trial (in the event of one, which won’t ever happen because they know).

  • kakes@sh.itjust.works
    link
    fedilink
    arrow-up
    2
    ·
    1 year ago

    Without a non-compete clause, I imagine if you changed it enough you’d be alright.

    I personally know someone that has started essentially the same company multiple times, and just keeps selling the companies off. It’s different software each time, but it does essentially the same thing.

  • F4stL4ne@programming.dev
    link
    fedilink
    arrow-up
    1
    ·
    edit-2
    1 year ago

    Without any patern on the idea, on what the programming does, a program doing the same thing can be done.

    On the intellectual property theft, the new program should be as much as different as the other one. Different name, different functions, different var, different language, etc. This is to avoid any possible mismatch between the 2 programs. As long as you don’t take the code but rewrite it you should be fine.

    Talking to a lawyer is mandatory in this case.

  • foo@withachanceof.com
    link
    fedilink
    arrow-up
    1
    ·
    edit-2
    1 year ago

    The only real answer here is talk to an actual lawyer rather than a bunch of Joe Blows on the internet. Case in point: Laws will vary depending on country and you haven’t specified what country you’re in. The set of laws you’re subject to are possibly entirely different than the set of laws each commenter here is familiar with. Never take legal advice from the internet.

    But if you’re only looking to publish the source code as a resume item, it’s not worth the legal exposure or time/money to talk to a lawyer. Find something else to write and put on your resume.

  • ericjmorey@programming.dev
    link
    fedilink
    arrow-up
    1
    ·
    edit-2
    1 year ago

    Right now there are huge financial interests in the tech sector arguing that anything output from a chat bot is non-copyright protected and non-infringing on the copyright of the training data. So use one of them to get something close to a working idea of the program and then edit that to create your self owned copyright of your program.