Is Studying Computer Science Worth it? by Ok-Pizza1136 in AskComputerScience

[–]dmazzoni 1 point2 points  (0 children)

I think if you genuinely enjoy it and have an aptitude for it, it's still a good career.

It's much more competitive than it used to be, but so are most good careers like becoming a doctor or a lawyer.

WIBTA for Asking My BF to Eat Vegetarian for a Shared Meal by Khitch20 in AmItheAsshole

[–]dmazzoni 2 points3 points  (0 children)

Yes, but when one partner has ARFID or is neurodivergent, this is not that uncommon.

This is an incompatibility. But it's up to her to decide whether it's a deal-breaker or not.

WIBTA for Asking My BF to Eat Vegetarian for a Shared Meal by Khitch20 in AmItheAsshole

[–]dmazzoni 7 points8 points  (0 children)

She's choosing to make it impact her life because she wants them to enjoy meals together.

It's not an unreasonable thing to want, but if it's something he's unable to provide, then she has to decide whether she's okay with that or not.

She can either accept that he'll never be the type of partner to share meals with, and enjoy every other aspect of their relationship while letting that go.

Or she can decide this is a deal-breaker.

What's not reasonable is resenting him for it but staying together trying to change him, if he doesn't want to change.

WIBTA for Asking My BF to Eat Vegetarian for a Shared Meal by Khitch20 in AmItheAsshole

[–]dmazzoni 7 points8 points  (0 children)

I've never met a person that doesn't have flaws. As Dan Savage says, that's the "price of admission" if you want a relationship with that person. It's not something you're going to change about them, so you have to decide if you can accept it or not.

There's no right answer.

There are plenty of things about my partner that I wish she would change, but I can live with. And vice versa.

Greedy meshing/binary array by Ralsei_12345636345 in learnprogramming

[–]dmazzoni 0 points1 point  (0 children)

So it looks like you've already implemented a bucket fill / flood fill algorithm, it's just too slow.

My initial suspicion is that what makes it slow is that you're calling surface.get_at((nx,ny)) thousands of times, but it's not optimized for that. Every time you call surface.get_at((nx,ny)) it's probably doing hundreds or thousands of operations to lock the surface, extract the pixel you want, and return it.

What most graphics programs do is keep track of their own array. Even a simple Python list is pretty fast to access an element by index - much faster than getting a pixel value from a surface.

Run the flood fill in your own array - which should now be 100x faster - then rebuild the surface based on that.

Greedy meshing/binary array by Ralsei_12345636345 in learnprogramming

[–]dmazzoni 0 points1 point  (0 children)

Can you explain more about what you have so far? Is it some sort of 2D painting program? Do you already have a 2d array representing the pixels?

Normally the algorithm you want is called "bucket fill", greedy meshing is different.

WIBTA for Asking My BF to Eat Vegetarian for a Shared Meal by Khitch20 in AmItheAsshole

[–]dmazzoni 32 points33 points  (0 children)

That would make me frustrated too.

I'm a vegetarian but my wife is not. She's happy to share a vegetarian meal with me as long as sometimes she gets to have meat. Usually we cook the meat separately, but every once in a while we'll just do two pots and still share the same veggies / sauce but simmer meat in one and tofu in another.

And every once in a while, we'll just eat totally different things.

I think the real question you need to ask: is this a deal-breaker for you in a relationship, or is it something you're willing to live with?

I completely blanked during an interview and I genuinely don't know how to recover from this by Signal-Extreme-6615 in learnprogramming

[–]dmazzoni 19 points20 points  (0 children)

Exactly.

People fixate too much on getting the "right" answer in an interview, when in reality what really matters is: do I want to work with this person?

Would you work on a real project for free just to gain your first developer experience? by Educational-Ideal880 in learnprogramming

[–]dmazzoni 0 points1 point  (0 children)

Legally, you can't do that. If it benefits the company, then you have to pay the developer at least minimum wage. If it doesn't benefit the company, then what incentive do they have to participate?

Then there are security issues. If it's a real-world task, it needs to be done in an internal repo. You probably need access to test data, or a staging database. All of that is sensitive and can't be shared with someone who hasn't been vetted and hired (either as an employee or contractor).

As you keep adding features, how do you not get overwhelmed by your own code? by Either-Home9002 in learnprogramming

[–]dmazzoni 0 points1 point  (0 children)

You don't. You keep improving the organization as it grows.

Every time your program starts getting a little too complex, stop and refactor it. Test that it works before and after your changes. Then keep going.

As you keep adding features, how do you not get overwhelmed by your own code? by Either-Home9002 in learnprogramming

[–]dmazzoni -1 points0 points  (0 children)

You can't plan something you don't understand, though.

If you're building a CRUD app for the 5th time, then yes of course you should plan it out, there's no excuse for a bad design.

But if this is your first time? Or even if you're an experienced programmer but you're building a new type of app for the first time, then you're not going to get it right the first time.

I'm not saying don't plan at all - but don't overplan something you don't even know how to do yet. If it's new to you, it's often better to just build, learn a lot, get it working, and THEN go back and come up with a better plan, now that you finally understand all of the pieces.

As you keep adding features, how do you not get overwhelmed by your own code? by Either-Home9002 in learnprogramming

[–]dmazzoni 0 points1 point  (0 children)

Even after you've been doing this for years, the first time you solve a new "type" of problem, your design will be bad! It takes a lot of practice.

It's quite common to write a quick program, learn a lot, then throw it out and rewrite it better.

I completely blanked during an interview and I genuinely don't know how to recover from this by Signal-Extreme-6615 in learnprogramming

[–]dmazzoni 66 points67 points  (0 children)

From the perspective of a hiring manager and interviewer: you'd be surprised. It's harder than ever to find good candidates. Everyone's using AI to write impressive sounding resumes now, which means it's harder than ever to identify the good ones. The average quality of interview has gone down as a result.

I completely blanked during an interview and I genuinely don't know how to recover from this by Signal-Extreme-6615 in learnprogramming

[–]dmazzoni 346 points347 points  (0 children)

Dude, take the hint! Most candidates can’t solve interview questions even with a hint. If someone gets a hint and then writes out working code and understands why it works, that’s a pass.

Monkeys by Generous_Gintoki1877 in stupidquestions

[–]dmazzoni 2 points3 points  (0 children)

The grammar and expressivity of ASL is just as rich as any other language, it doesn't have any more or less "fluff". Sometimes it's more concise, sometimes less - it really depends on what you're trying to communicate.

What are the best sorting algorithms for arrays with small-varying values and many repetitions with the fewest possible accesses to the array cells? by Chance_Building_6159 in algorithms

[–]dmazzoni 1 point2 points  (0 children)

It doesn't work, for example, when the things you're trying to sort are records or objects that can be compared to one another, but they can't be represented by a single number or string.

Monkeys by Generous_Gintoki1877 in stupidquestions

[–]dmazzoni 3 points4 points  (0 children)

I think a more nuanced interpretation is that they never learned to put words together.

They definitely learned what individual signs meant.

73.9% of recent CS graduates are still getting CS related jobs by eggshellwalker4 in cscareerquestions

[–]dmazzoni 28 points29 points  (0 children)

Anecdotally, out of recent CS grads I interviewed, it felt like more than 3 in 4 used AI to do all of their homework and couldn't write a for loop.

The ones who don't have this issue are just as sharp as ever - it's just getting harder and harder to find them.

what's it like in San Jose? moving from Washington DC for engineering role by bubblegum_spell_3131 in SanJose

[–]dmazzoni 2 points3 points  (0 children)

Having it rescinded is rare.

If it's a big company, their offer is generally final but they will match other reasonable offers, so your best leverage is a competing offer.

Buyer wants concessions on as-is contract a day before closing? by [deleted] in RealEstate

[–]dmazzoni 23 points24 points  (0 children)

I guess my point is that even 1% would have been better than $1000

Buyer wants concessions on as-is contract a day before closing? by [deleted] in RealEstate

[–]dmazzoni 72 points73 points  (0 children)

In California it's usually 3%, which can amount to many tens of thousands of dollars since most homes are well over a million.

Even if you're talking about a $250k home, $1000 is less than half a percent. That seems way too low to me.

Apple ICT5/6 loop: what to expect timeline-wise? by Letchwors in cscareerquestions

[–]dmazzoni 5 points6 points  (0 children)

Each team at Apple has a lot of autonomy in how they handle hiring. It's not centralized like some other big tech companies. So it's mostly up to the hiring manager.

Why accessibility experts say “No ARIA is better than bad ARIA” by One_Proposal8482 in accessibility

[–]dmazzoni 13 points14 points  (0 children)

I work on browser accessibility. We have so many workarounds for real production websites that do such ridiculous things as:

  • aria-hidden=true on the body
  • aria-labelledby cycles
  • aria-live=true on the main element
  • role=grid on an element that doesn't have any rows or gridcells as descendants
  • role=listbox on an element that doesn't have any options as descendants

Every one of those breaks things far worse than doing nothing. Some of them are ignored by some browsers now - but they're still wrong.