Just a regular Joe.

  • 0 Posts
  • 42 Comments
Joined 3 years ago
cake
Cake day: July 7th, 2023

help-circle



  • Many people have “itches to scratch” and some interest in development but little time to learn, so AI coding tools will allow them to scratch many of those itches without paying $ to others or investing that time (for better or for worse). Even as an experienced (but no longer full time) coder, I use it to scratch itches when I don’t have the time/lust.

    Often enough, you’ll find some customizable app that does 90% of what you want, with a bunch of features you don’t care about. Writing personalized apps is a cool new thing, giving you exactly the functionality that you want. Many times these will be based on OSS or open libraries, which the AI just glues together.

    Will this personalized development result in new quality OSS apps, though? I doubt it. We also don’t really need more sloppy code on github.


    There are a lot of personal apps that just happen to have an OSS license… and then there are OSS projects, built and maintained as OSS community projects. It takes dedication to run a real OSS project, build a community, handle issues, websites, etc.

    Will AI coding tools assist developers of real OSS projects? Sure… many are already using it to varying degrees. We’ll increasingly see it being used to find and fix bugs and security issues ahead of time - security researchers & blackhats are already having a field day.


  • Don’t bet on it. Senior devs tend to know there is complexity and pitfalls over time, and hope that by using library X (or following pattern Y) they can future proof the product. So instead of writing 50 lines of self-contained code + tests, some people will happily write 60 lines of integration code + tests, and pull in a dozen dependencies.

    However: With appropriate interfaces and a little forethought, you can start with the simple solution and extend it or complement it with libraries or needed abstractions down the road if and when the need arises.

    Another bug-bear of mine is being asked to review/run over-engineered one-off programs (eg. simple ETL scripts). I remember replacing about 1000 lines of java (many years ago) with a 20 line python script, and passive-aggressively asking the senior developer to review the new script.





  • Indeed. I suspect it would need to be framed around national security and national interests, to have any realistic chance of success. AI is being seen as a necessity for the future of many countries … embrace it, or be steamrolled in the future by those who did, so a soft touch is being embraced.

    Copyright and licensing uncertainty could hinder that, and the status quo today in many places is to not treat training as copyright infringement (eg. US), or to require an explicit opt-out (eg. EU). A lack of international agreements means it’s all a bit wishy washy, and hard to prove and enforce.

    Things get (only slightly) easier if the material is behind a terms-of-service wall.






  • So you want to create a human exploitation / profit maximising system?

    Pretty sure those are proprietary algorithms, with some common knowledge foundations that LLMs will happily tell you about.

    It’s all simple enough at a small scale, but the challenge is optimizing it for your use-cases, and building for scale & reliability in a cost efficient manner.

    Such companies will likely also have top notch software engineers & statisticians, marketing teams, psychologists and lawyers on the payroll, all contributing their part to the perpetuation of human misery in the name of corporate profit.







  • Another technique that helps is to limit the amount of information shared with clients to need to know info. This can be computationally intensive server-side and hard to get right … but it can help in many cases. There are evolving techniques to do this.

    In FPS games, there can also be streaming input validation. eg. Accurate fire requires the right sequence of events and/or is used for cheat detection. At the point where cheats have to emulate human behaviour, with human-like reaction times, the value of cheating drops.

    That’s the advanced stuff. Many games don’t even check whether people are running around out of bounds, flying through the air etc. Known bugs and map exploits don’t get fixed for years.