• 1 Post
  • 23 Comments
Joined 2 years ago
cake
Cake day: October 4th, 2023

help-circle




  • Alsup? Is this the same judge who also presided over Oracle v. Google over the use of Java in Android? That guy really does his homework over cases he presides on, he learned how to code to see if APIs are copyrightable.

    As for the ruling, I’m not in favour of AI training on copyrighted material, but I can see where the judgement is coming from. I think it’s a matter of what’s really copyrightable: the actual text or images or the abstract knowledge in the material. In other words, if you were to read a book and then write a summary of a section of it in your own words or orally described what you learned from the book to someone else, does that mean copyright infringement? Or if you watch a movie and then describe your favourite scenes to your friends?

    Perhaps a case could be made that AI training on copyrighted materials is not the same as humans consuming the copyrighted material and therefore it should have a different provision in copyright law. I’m no lawyer, but I’d assume that current copyright law works on the basis that humans do not generally have perfect recall of the copyrighted material they consume. But then again a counter argument could be that neither does the AI due to its tendency to hallucinate sometimes. However, it still has superior recall compared to humans and perhaps could be the grounds for amending copyright law about AI training?






  • I think I need to clear a common misconception people seem to have here: Oracle has very little to do with Java.

    At most, Oracle has the following connection to Java:

    • Own the trademark
    • Have a build of the JDK/JRE with commercial support.

    However, Java as a language’s baseline comes from OpenJDK, an open source (GPL 2.0) community project which is upstream to several builds including Oracle’s JVM. It follows a “bazaar” like development model similar to the Linux kernel where you can see their mailing lists and track what’s being worked on. Anyone can contribute and the code is on Github: https://github.com/openjdk/jdk.

    That being said, you don’t even need to use Oracle’s JDK (it sucks IMO) and use one of the community provided builds of OpenJDK. OpenJDK builds are provided by Eclipse, Amazon, Azul, Bellsoft and even Microsoft provides JDK/JRE builds. These are free of cost and have longer term support than Oracle’s offering.









  • Anyway: What makes the difference for me: taking the time to think about proper solutions. Let some problems rest for a day and reevaluate the things I made the day before, before review, merge or deployments.

    I agree, I do this when I am designing some new module. I tend to write detailed design documents, covering as much behaviour as possible. I then get it reviewed by someone who might have a good understanding of the business process related to the change. This is not very feasible for legacy code because often there is no proper documentation or comments. What I’d prefer in such cases is to implement new modules in a manner where it lies somewhere outside the legacy body of code (different package or module) and expose functions to hook into the legacy code. This way at least the new enhancements follow best practices and don’t become just another patchwork to the increasingly unmaintainable legacy code.

    Back to your original problem: legacy code like that is probably hard for everyone but it makes a difference in what pace (or patience!) you are doing your work. I think medication can help you with that :)

    True. I have been thinking of resuming medication myself.



  • I avoid adding logs because after I’m done, I will have to remove them otherwise my PRs will be very big depending on how many files I have to update. I instead track the call hierarchy of the function I am studying using a feature in the IDE. It basically creates a tree of all functions called by a function, which helps me track how deep I am and how I got to where I am currently.

    I should probably resume my medication though.