• 0 Posts
  • 35 Comments
Joined 1 year ago
cake
Cake day: June 21st, 2023

help-circle



  • I’ve heard nothing but good things about HTMX

    I’ve only ever heard anything “bad” about HTMX and it was here on Lemmy, actually. I ran into someone who was absolutely certain that HTMX was unsafe by design because it leveraged HTML over the wire and was therefore susceptible to HTML injection attacks, specifically by injecting malicious scripts that could be ran from domains you didn’t control. I tried explaining that proper utilization of access-control headers innately prevented this because they worked on the browser level and couldn’t be intercepted or interfered with by HTML injection by design, but he kept insisting it was unsafe while refusing to elaborate. He was very wrong, of course, but also very confident.






  • I’ve heard similar from the worst first year CS students you could ever meet. People talk out their ass without the experience to back up their observations constantly. The indentation thing is a reasonable heuristic that states you are adding too much complexity at specific points in your code that suggests you should isolate core pieces of logic into discrete functions. And while that’s broadly reasonable, this often has the downside of you producing code that has a lot of very small, very specific functions that are only ever invoked by other very small, very specific functions. It doesn’t make your code easier to read or understand and it arguably leads to scenarios in which your code becomes very disorganized and needlessly opaque purely because you didn’t want additional indentation in order to meet some kind of arbitrary formatting guideline you set for yourself. This is something that happens in any language but some languages are more susceptible to it than others. PEP8’s line length limit is treated like biblical edict by your more insufferable python developers.



  • Yeah, but it’s still a Ship of Theseus problem. If you have a ship and replace every single board or plank with a different one, piece by piece, is it still the same ship or a completely different one, albeit an exact replica of the original. It’s important because of philosophical ideas around the existence of the soul and authenticity of the individual and a bunch of other thought-experimenty stuff.



  • What’s more important is a portfolio that shows you know what you’re doing.

    Which is hardly trivial to create. CS is a vast field, with a lot of subsectors and areas of specialization, and not all of the relevant skills are tied to things you can toss in a resume or portfolio. A lot of companies need people who have 1) good communications skills and 2) the ability to identify problems in code or infrastructure and offer efficiently implemented solutions, or at least the path to those solutions and 3) knowledge of multiple coding languages and a certain degree of specialization in Linux. Some of these are difficult things to present in a CV and the place they really can be demonstrated is in interviews. The hard part for a new graduate is just going to be able to talk to someone who can give them the job and see if they’re a good fit for the company. Internships or co-op opportunities are also very important, as they let you talk about work you’ve actually done somewhere. But these are hard to come by.