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

  • 0 Posts
  • 132 Comments
Joined 8 months ago
cake
Cake day: October 14th, 2024

help-circle




  • Alright. Way too many socialists in this post who don’t know how 'Murica works, god dammit. Here’s real advice:

    You woke up, so you aren’t dead yet. In most cases, that’s a good sign. Give it 30 minutes. If you feel better, great! This is where I preposterously tell you to follow up with your family doctor and we both have a good chuckle.

    (Edit to explain: we have no idea who our family doctor is and we haven’t been there in so long we would be considered a new patient.)

    If you don’t feel better, might well give it another hour. Most of the damage from a heart attack or stroke is done in the first 30 minutes, so you’re probably not going to get any worse.

    If you’re still not dead after that, you’re probably clear to make it through the weekend.

    Next question is do you have sick leave? If not, congratulations, you’re fine! If you do have sick leave, go ahead and make an appointment first thing Monday. They won’t do anything, just send you for labs, maybe or just leave that part to the specialist they will refer you to.

    So now it’s 6 weeks later and the specialist is calling to confirm the appointment you’re forgotten about. Do you feel better or are you out of sick leave? Congratulations, you’re fine.

    Next, is your deductible over 10% of your annual income? (5% if it’s after Nov.15. You’re gonna wind up paying that whole thing for diagnostic tests this year and the actual treatment will hit you after Jan 1 and you’re double fucked.) If it is, congratulations, you’re fine!

    If you reach this point, you probably are in need of medical attention and can afford it. Congratulations on getting the help you need.

    Bask in the superiority of the best healthcare in the world, you European nancies!

    Obviously the tone is meant to be humorous, but this is basically the reality. The only thing I’ve omitted is that you can just go to the hospital and get the treatment you need and then avoid answering unknown numbers for 7 years. I have yet to see anyone sued over medical debt.







  • I see a strong correlation to broadband access. Once a direct, high-speed line was ubiquitous, it went from a place for nerds and enthusiasts to hang out to a market. High speed smartphones sealed the deal. Now it’s possible to have a nearly continuous connection to every pair of eyes in the world. Or at least a sizeable percentage.

    But I think it’s the data speed. When you had to wait twenty seconds for a page of data to load there wasn’t extraneous bullshit like ads or content suggestions, or scripts to track everyone. You had to send the absolute minimum and the only payment you got for your efforts was your hit counter.

    I miss it.



  • All I can really offer is if there are reviewers who review your kind of thing, watch their reviews of similar products, look for what they highlight as really good or bad, and then do what you can to make sure your stuff gets a good review. Then contact the reviewers and offer them a gratis copy in return for an honest review. If you get a good review, that can generate word of mouth that can get you a little momentum.

    That’s what I’d do if I were starting on your journey. I don’t know whether it’s a good suggestion or not. Maybe others will come along and offer better.


  • There is also just something very alienating when you work in large teams where each dev only contributes a small component, a lack of knowledge about the system is not only a good thing there but an expected paradigm to create reusable code.

    No. That is to say, it might be common, it might be expected, but it is often not good. Every time I join a new team and am exposed to a new code base, I’m astonished by the amount of absolute shit code that results from reusing shit in ways that it was never build with the idea of supporting.

    Why? Because someone was focused on completing a single story as fast as possible and they created a dependency they shouldn’t have. And this grows and festers until you have an unmaintainable nightmare.

    In order to build solid reusable code you must build it with that knowledge and intent. I’ll cut my rant off there, but I recently joined a new team and the wounds are all very fresh.


  • You’re not just making sure you write the letters correctly, you’re also following the syntax rules of the language you’re writing. And while you’re writing, you’re reinforcing those rules in your head.

    I get where you’re coming from, but I’ve worked with a lot of bad developers who never got the hang of this even as mid-level developers. On the other hand, I understand the utility of knowing how to do these things for ourselves. There are a number of “black-box” libraries that were just an absolute mystery to me until I tried implementing them myself and began to see these libraries are usually not complex so much as they are thorough in covering edge cases that 90% of users will never care about.

    It would definitely be a shame if these tools caused new developers to bypass fundamental skill development. My only hesitation is the number of developers who should’ve developed those skills and never did before AI. There’s something wrong either with how developers are learning or who is getting into development.

    I spent a couple weeks trying to use CoPilot and at the end I still had to correct its shitty code, which either hallucinated features I wasn’t implementing, or hallucinated syntax rules I wasn’t using.

    We are using CoPilot. As a code-completion engine it is handy. I’m much more skeptical about the new code it writes. Like you, I have not had good experiences with that.

    Also, I’ve never heard of anyone paying $20 a month for the privilege of not writing in cursive, or being unable to write because they don’t have internet. Something to think about.

    You’re right. Tool access is certainly something to think about. I have more nuanced thoughts, but I don’t want to disagree just to disagree, you know?


  • I agree, but I acknowledge we could be at a “cursive writing” moment where something that was once a critical skill becomes irrelevant. That’s sort of a pending question at this point.

    I mean I’ve spent a lot of time writing regex to automate large sets of changes. Sometimes it can be a bit fiddly to get the regex just so. Like replacing direct field access with getters where you have to find the field access and change .foo to .getFoo() and the capitalization can take a couple of tries to get just right.

    With AI you can literally just say “replace all direct field access (e.g. thing.foo) with getters and setters” and the AI will do it in under a second. It will still be a very useful skill to be able to do things like that with regex because not everything is so easy to communicate to the AI, but it will become less frequently needed and a lot of developers who never learned that skill will get by using AI and just doing the rare things AI can’t do with repetitive keyboarding.


  • I asked a question on there about Apache Poi. Then no one answered it so I found a solution and answered it myself. Must’ve stayed relevant because I fielded a few questions about it for years.

    Then they took my account away, I think maybe because I didn’t confirm my identity after a big breach? Then I looked for my Q/A and it was attributed to someone else. I was hot about it for a minute and then realized I didn’t care and was finally free from being the expert in that one niche thing I’ve never done since.


  • To the first part, I agree. A skilled developer who can quickly separate the wheat from the chaff can get a boost out of AI. I’d put it at around 5-10%, but I’ve had some tiny projects where it was 400% boost. I think it’s a small net gain.

    As for your second point I just have to disagree. There are no numbers but it is clearly selling the idea of the majority of code being AI generated, and that’s bullshit whether it’s an outright lie with numbers, or merely vaguely misleading. It’s like when someone cuts off the bottom of a graph to make relative change look huge. It wants people to glance at it, get the wrong idea, and move off without curiosity.



  • I don’t want to pretend this is some kind of gospel or anything, but the way I see it messaging frameworks are meant to broadcast to listeners — one directional and 1:n. And to use a radio analogy, the radio broadcasts music, but you don’t have to update them that you’ve heard a song. And if you do need to send something back, you pick up the phone and make a (rest) call.

    I think if you need bidirectional communication between systems, they are coupled in a way that just makes sense to use rest calls (even those are almost always going to be one client, one service, not each one calling the other, right?). If you’ve got an architecture idea I’d be happy to entertain it. There are probably whole industries with use cases I’ve never encountered before. But as far as I can tell, using an event framework was never intended for bidirectional communication.

    That being said, I can imagine an application that listens to a sales stream and identifies inventory that needs to be shipped from a warehouse, and then the warehouse broadcasts a stream of shipping data. But even in that case, I feel like the listener that generates loading orders and the broadcaster that updates the states of outbound shipments would be two separate services.