25+ yr Java/JS dev
Linux novice - running Ubuntu (no windows/mac)

  • 0 Posts
  • 80 Comments
Joined 1 year ago
cake
Cake day: October 14th, 2024

help-circle





  • I use autocomplete, asking chat, and full agentic code generation with Cline & Claude.

    I don’t consider environmental damage by AI because it is a negligible source of such damage compared to other vastly more wasteful industries.

    I am primarily interested in text generation. The only use I have for generated pictures, voices, video or music is to fuck around. I think I generated my D&D character portrait. My last portrait was a stick man.

    What I ask it to do? My ChatGPT history is vast and covers everything from “how is this word used” to “what drinks can I mix given what’s in my liquor cabinet” to “analyze code for me” to “my doctor ordered some labs and some came back abnormal, what does this mean? Does this test have a high rate I’d false positive?” to “someone wrote this at me on the internet, help me understand their point” to “someone wrote this at me in the internet, how can I tell them to fuck the fuck off… nicely?” And I write atrocious fiction.

    Oh I use it a lot to analyze articles and identify bias, reliability, look up other related articles, things that sound bad but really don’t mean anything and point out gaps in the journalistic process (I.e. shoddy reporting).

    I also have written a discord dungeon master bot. It works poorly due to aggressive censorship and slop on open AI.


  • I use Mint. I got used to it very quickly. I have a harder time going back and forth between that and my MacBook. I’ve used Ubuntu. It’s fine also.

    It’s been so long since I’ve used Fedora that my opinion would be outdated, but I observe it has many adherents, which it wouldn’t if it was terrible.

    I really like Mint, but if you’re looking for something that screams “not windows” I guess you could look elsewhere. I’m not a big fan of “how the fuck do I…” and for the most part Mint has worked as I’d expect.


  • What if I develop software all day long and just don’t feel like an OS I need to fuck around with? I feel like Mint is great for anyone who just doesn’t want to fuck around with their own computer. Every game I want to play works. Every productivity tool I want is there. Any software I develop works fine. Anything I want to serve on my local network works fine. I click the update once a week or so and it just works.

    I feel like people scoff at Mint because you don’t need to know anything about computers to use it, but that’s actually a hell of a feature even if you do know.


  • Mate, the great thing about Linux is it isn’t just one thing. I love Mint, but I think it’s great that people who like different things can get what they like, too. In fact I want those folks not to use it. If everyone used Mint, it would just become another Windows (or maybe RedHat would be a better parallel).

    Having options means everyone is pushed to improve. Consolidation means ossification.

    That said, Mint rocks and people should use it—if they want.


  • The hardest part about learning to code is that the projects you really want to do are far beyond your abilities as a beginner. I recommend starting with modding, creating websites, or even writing macros for stuff like excel. They get you started.

    Then also watch some YouTube videos on stuff like SOLID, design patterns, functional programming, and “getting started with <language>”.

    Then try to write your own versions of stuff. I learned a bunch of stuff by writing my own versions of stuff. Like I tried backporting Java Functions, BiFunctions, Predicates, etc to Java 7. It didn’t work great because the language support wasn’t there, but I learned a lot about what things are hard and why things are designed the way they are. I feel sorry for the poor bastards that inherited that code.

    Also, don’t let people give you too much shit about asking questions of AI. It frequently explains things way better than it executes. It’s a great first line of learning even if you really need a deeper dive into the documentation to understand the more esoteric stuff. If you have a question you can’t find the answer to, ChatGPT will explain it in 30 seconds where you might have to wait days on a forum for someone to feel like answering.

    Beware: ChatGPT is awful about mixing different versions of stuff so the answers it gives may well be obsolete. But if you’re really confused it can point you in the right direction. Yeah, you’ll have to learn a lot more nuance when you start doing shit professionally, but if you’re just fucking around it’s great. And googling for answers isn’t much better in that regard. The best answers come from the docs, but especially when you’re starting out, the documentation often assumes a baseline of contextual knowledge you aren’t going to have.

    Try implementing a custom collector in Java just based on the docs. Have fucking fun with that.




  • ChatGPT can do better if you explicitly say what you want. All it can do is suggest areas to look at.

    Try something like:

    Analyze the following code and provide direct feedback with a focus on maintainability, established best practices, and robustness. Respond as a seasoned expert providing actionable criticism, avoiding praise and low-impact suggestions.
    ---
    <code>
    

    That being said, you have to look at the stuff it says and consider whether the feedback is useful or not. It suggests some things to examine, but that doesn’t mean the advice it gives is always good. You can also feed it a chunk of code and ask if there is a more efficient or maintainable way of writing it — but remember it’s always going to say there are things you can improve so you have to be the one to decide which suggestions make things actually better and which are just response filler.

    It also may not catch everything, particularly if it doesn’t understand where the code will run or what it will be used for.


  • I’m generally much better at writing regex than ChatGPT. Though I will say, I needed the regex for ISO 3339 date format just yesterday for validation and copilot/Claude provided a more specific version than Google search. I still have to go back and double check the corporate standard as I suspect we only allow offsets from UTC and all implementations I looked at are too permissive.

    I’ve had middling experience with bash. The scripts I wrote are generally petty basic. Set a few variables based on the current project and then execute some gcloud or Tekton commands. And I don’t write them often so it finds and fixes things I often forget like not being allowed to have spaces around =.

    I think the more externalities that need to be considered to come up with a correct answer, the less reliable ChatGPT is because there are a lot of externalities it doesn’t really know to consider. Bash has a huge number of externalities that might affect the correct way of doing something.

    I should experiment with more functional languages. “Pure functions” are really good at minimizing externalities. Worth investigating.





  • There is a middle ground. I have one prompt I use. I might tweak it a little for different technologies, languages, etc. only so I can fit more standards, documentation and example code in the upload limit.

    And I ask it questions rather than asking it to write code. I have it review my code, suggest other ways of doing something, have it explain best practices, ask it to evaluate the maintainability, conformance to corporate standards, etc.

    Sometimes it takes me down a rabbit hole when I’m outside my experience (so does Google and stack overflow for what it’s worth), but if you’re executing a task you understand well on your own, it can help you do it faster and/or better.