HNHacker News
TopNewBestAskShowJobs

karolinepauls

36 karma · joined July 24, 2024

submissionscomments
karolinepauls··on Google CEO says more than a quarter of the company's new code is created by AI
> very few people approach the field of software engineering with anything remotely resembling rigor, and

I have this one opinion which I would not say at work:

In software development it's easy to feel smart because what you made "works" and you can show "effects".

- Does it wrap every failable condition in `except Exception`? Uhh, but look, it works.

- Does it define a class hierarchy for what should be a dictionary lookup? It works great tho!

- Does it create a cyclic graph of objects calling each other's methods to create more objects holding references to the objects that created them? And for what, to produce a flat dictionary of data at end of the day? But see, it works.

this is getting boring, maybe just skip past the list

- Does it stuff what should be local variables and parameters in self, creating a big stateful blob of an object where every attribute is optional and methods need to be called in the right order, otherwise you get an exception? Yes, but it works.

- Does it embed a browser engine? But it works!

The programmer, positively affirmed, continues spewing out crap, while the senior keep fighting fires to keep things running, while insulating the programmer from the taste of their own medicine.

But more generally, it's hard to expect people to learn how to solve problems simply if they're given gigantic OO languages with all the features and no apparent cost to any of them. People learn how to write classes and then never learn get good at writing code with a clear data flow.

Even very bright people can get fall for this trap because engineering isn't just about being smart but about using intelligence and experience to solve a problem while minmaxing correctly chosen properties. Those properties should generally be: dev time, complexity (state/flow), correctness, test coverage, ease of change, performance (anything else?). Anyway, "Affirming one's opinions about how things should be done" isn't one of them.

karolinepauls··on Ask HN: Who wants to be hired? (August 2024)

  Location: London, UK
  Remote: Yes
  Willing to relocate: Maybe
  Technologies: Python (mostly Flask+SQLAlchemy), Postgres, Clojure, FP, frontend (JS/ClojureScript, React/re-frame), DevOps (Terraform, Kubernetes), Linux (erhm, GNU/Linux), some Rust/C/C++/Go
  Résumé/CV: https://drive.google.com/file/d/105uum7rF0XleeDTxm7dW6oBPesAE6TGa/view?usp=sharing
  Email: jobs2024.flatware730@passinbox.com
  Website: https://karolinepauls.com/
Experienced (mostly) backend developer, with 11 years on the record. Wearer of the DevOps hat when needed. Eager to share skills and learn.

Although I started by working with a strong team of contractors, I'm experienced in:

- working with minimal resources

- addressing large amounts of inherited tech debt

And thanks to much of that I now can:

- turn messy requirements into understandable tasks

- design and develop solutions of minimal complexity

- solve classes of problems rather than problems one by one

- deliver a really good developer experience, e.g. make real integration tests easy to write and fast to run

I believe that a good environment is one where knowledge spreads, people are eager to help, discussions are had, overenginnering is not permitted, and where 2 weeks of work are not spent to save on 2 solution design sessions.

← PreviousPage 2 of 2