[-] CodeBlooded@programming.dev 9 points 9 months ago

I can’t straight up “quit Reddit” for Lemmy yet. There’s not enough of the content I want to see here, yet.

A while after Reddit practically blocked the Apollo app, I realized just how much I loved that app. It was the perfect Reddit interface. Not long after, I discovered how great Voyager did of replacing the experience, and that’s what ultimately brought me here “permanently.”

So, Reddit has lost browsing time from me big time, and that time is now shared with Lemmy.

Also, I love a good Rust project 🦀

[-] CodeBlooded@programming.dev 8 points 1 year ago* (last edited 1 year ago)

Code never lies; comments sometimes do.

[-] CodeBlooded@programming.dev 8 points 3 years ago* (last edited 3 years ago)

WASM is simply further down the rabbit hole for someone who is new to programming (but not someone who’s already a programmer and just doesn’t focus on web dev today). You are likely far less beginner than you think if you’re making decisions like “I’m going to compile my software written in Rust targeting WASM so I can demo it.”

[-] CodeBlooded@programming.dev 9 points 3 years ago

Python, and dynamically typed languages in general, are known as being great for beginners. However, I feel that while they’re fun for beginners, they should only be used if you really know what you’re doing, as the code can get messy real fast without some guard rails in place (static typing being a big one).

[-] CodeBlooded@programming.dev 9 points 3 years ago

I’ve found Docker helpful when I want to use it to build binaries or use CLI tools that may not be available directly on the CICD platform. Also, Docker makes it easier to run the same code on MacOS that I ended up running on a Linux CICD server.

What would you consider to be overuse of containers?

[-] CodeBlooded@programming.dev 8 points 3 years ago

Okay, I see what you’re saying and I concur. Thanks for the clarifying comment! 🫡

[-] CodeBlooded@programming.dev 8 points 3 years ago

I’m willing to bet a team of untrained, uneducated, software/data engineers receiving big salaries are responsible for this.

It’s my understanding that big brand banks live on top of brittle, low quality, poorly tested code- and that’s if they’re not straight up using excel to run production processes.

[-] CodeBlooded@programming.dev 8 points 3 years ago* (last edited 3 years ago)

Ah yes, the project that nobody asked for, and it has to be worth it because you still have your actual assigned work to hack.

I remember that feeling of not seeing the light at the end of the tunnel while having invested multiple days into a side quest that my boss never asked for (but would ultimately make me, or the team, more productive). I remember being more junior in my career and fighting that devil on my shoulder as it’s saying, “it’s turned into spaghetti! Just abandon it and get back to your deadlines before you go too far!”

[-] CodeBlooded@programming.dev 8 points 3 years ago

Docker builds are not reproducible

What makes you say that?

My team relies on Docker because it is reproducible…

[-] CodeBlooded@programming.dev 8 points 3 years ago

The meme itself isn’t bashing Docker.

[-] CodeBlooded@programming.dev 9 points 3 years ago* (last edited 3 years ago)

Here’s a few from me:

  • How many separate projects are developers working on at any given time? (Because I want to know if they expect developers to be context switching all the time.)

  • Is anyone sitting there with a stop watching checking what time I get into work in the morning? (Because I’m not hourly and don’t expect to be treated as such.)

  • Describe the work-life balance.

  • Are you agile? Not agile? Scrum teams?

  • What might an average day look like for me? Walk me through from when I sign in and log off for the day.

  • How do you perform automated testing here? (if they don’t, I’m concerned)

  • Do you enforce code formatting?

  • How do you deploy your code? (if it’s not a CICD pipeline, I’m concerned)

  • How involved in DevOps are developers? (Will o be expected to work on CICD code? Infrastructure as Code?)

  • What version control system do you use? (Of the answer is nothing, the interview is over. I will not work there. If it’s something other than Git, I’m not excited about it.)

  • Is Docker used here? (Docker makes me very productive, I’m concerned if Docker is a tool I’m not allowed to use.)

  • Are there any other programming languages I’ll be using other than <advertised language for the position here>?

  • Are SOLID principles common practice here? Or rejected as unnecessary? (I love SOLID and think it’s useful much more than not. If SOLID is frowned upon, I probably won’t be happy there.)

  • Can I choose what sort of machine I get to work on? (If I can’t work on MacOS, it could be a deal breaker… I love MacOS for development, sue me! 🤷‍♂️)

[-] CodeBlooded@programming.dev 9 points 3 years ago* (last edited 3 years ago)

Single responsibility principle: is your GetData() function responsible for getting data? Or is it responsible for creating a new database connection and also using that to go get the data?

Start naming your functions by what they really do. When you see the word “and” in your function name, you know your function is responsible for too much.

Dependency injection is the difference between CreateDatabaseConnectionAndGetData() and GetData(connection ConnectionType).

In the first example, that function will always connect to the specific db that you hard coded in it. It probably has to also read in a config file to get the connection details. Maybe you should name it ReadConfigAndCreateDatabaseConnectionAndGetData()?

In the second example, I can pass in a MySQL connection or PostgreSQL connection, or some dummy connection for testing.

Keep all that nasty dirty untestable code in one place and spare your business logic from owning all of that.

view more: ‹ prev next ›

CodeBlooded

0 post score
0 comment score
joined 3 years ago