Will do! Any specific things you like to see in workflow vids? Otherwise I'll just do the obvious stuff. I will reply here when I have something for y'all.
The tl;dr is, on the Mac, (1) start their Simulator app; (2) start a build with watch in the app root directory; and (3) edit code as usual (IntelliJ/Cursive).
The app rebuilds/reloads on save. Tensegritics is looking at better hot reloading; I am happy with automatic full restarts.
Flutter offers a couple of endpoints to visit for debuggers, but I just live off print debugging in the build console.
Huge portions of the midwest are used nigh exclusively for cattle grazing. Yes they spend the end of their lives in close quarters eating a lot, but they're not generally being birthed in those environments.
Imagine thinking modern factory farming is the only way to go about things. It really can be as simple as putting a cow in a field with grass and water. My family has been doing it for 150 years.
You are wildly mistaken if you believe traditional "cow does whatever it wants until slaughter" farming is where the majority[0] of meat comes from in this country (assuming USA).
The cost of sorting has to then be factored in (because plastics are often not perfect hydrocarbons, they contain a variety of elements depending on bulk composition and additives). And, even perfectly sorted plastics will not burn as cleanly as freshly refined hydrocarbons, so you need to factor that cost in as well.
And for what benefit? Plastics in a land fill are a form of carbon sequestration if the alternative is burning them or fresh hydrocarbons.
IMO the value in replacing plastic use has very little to do with energy/CO2. It's more related to other health/environmental effects (microplastics, etc).
In my experience if someone uses the term “brainwashing” they are not trying to have a real conversation, they are trying to avoid any nuanced conversation actually.
I think the point is that it can be hard to legitimately solve some of those tricky leetcode-style problems under time pressure, with no access to outside resources, and with the knowledge that somebody is judging your every move.
Memorizing the common problems gives you a big leg up on being able to successfully pass an interview.
While memorization is involved, people make it seem like you need to memorize specific solutions to specific leetcode problems, and that's just not only false but also a bizzare and almost impossible strategy.
What you do need to memorize are a small group of algorithmic designs and have a good sense of when to apply each one. The main ones include divide and conquer, greedy, graph, and what seems to be the hardest of them all, dynamic programming algorithms.
It's disappointing that so few developers know these or are comfortable with these designs since employing them provides significant speedups to what would otherwise involve deeply nested loops or other naive brute force solutions. Becoming familiar with the broad set of algorithm designs is something most competent developers should invest some time in, and it's not like it requires years and years to become good at it but the benefits are enormous.
This is one of the classics, and yeah, I've gotten this one too. But this one's a gimme since it's so simple and you really are just expected to have heard it. Someone at Microsoft asked me this one and I considered it a massive gift. I thought for a few moments, articulated the solution, and then wrote the code. Then I said, "of course, everyone's heard this one before; I didn't just come up with that on the spot." (you may as well wait to admit this at the end instead of the beginning since you then get an open-ended amount of time to give a stellar answer to what they asked, then you get honesty credit for admitting you knew it all along, plus you've eaten up time that they might have used to switch questions on you).
There are much worse ones on leetcode, and people expecting you to get the optimal solution are absurd. I fully expect to fail those unless I'm lucky. I don't study leetcode problems, because my interview approach is to first and foremost, implement a naive (aka slow) but correct solution in the time allotted, then engage in a conversation about ideas for improving it (not a rewrite). This has worked for me for decades, and it's also what I expect of people I'm interviewing.
This type of approach allows the interviewee to demonstrate that 1) they can write basic code, 2) they can solve a problem, 3) they can critique their own code and discuss perf implications, 4) they can think of ways to improve it even if they don't necessarily have time for a rewrite, and it allows the interviewer to demonstrate that they aren't a dick who's just playing "I'm smarter than you because I'm in the advantaged position."
Can you tell a little more about this situation? Because it sounds like you were the interviewer who expected this... Having conducted interviews at big tech companies, I can attest there is variance between interviewer expectations, despite leadership's best efforts to make it objective. So I have to wonder if you've seen it, doesn't that mean you were creating that environment?
Not only that, I had to pay for my own lunch and it took four weeks for it to finally say it wasn't hiring me.
Is the problem with leetcode the content or the process? The process is utterly broken, but any time hiring comes up it feels like most complaints are about the content.
There's the group of people for whom doing these "Algos I" problems in university was relatively painless; not that all problems were "easy" but there's an ease to approaching the problem, and with enough continuous effort the problem is solved. These people also tend to have good retention such that 10 years later, they just need to practice LC for a few weeks and they're back in top form, even if they've been building the easiest CRUD apps for years and not working their brains at all. I've seen this firsthand.
There's another group of people who, for whatever reason, are lacking the facilities to calmly and clearly approach these problems. Doing "Algos I" was a serious grind, and the Brain Toolbox for solving these problems falls apart quickly once the final has been taken. Even if doing relatively complex work at their jobs for years, when it's time to practice LC, it may take months to get anywhere near "top form".
Obviously everyone is on a spectrum between and beyond these two groups, and I fall closer to the latter.
Now add on the fact that there's a person watching you who is going to dictate whether you get a paycheck at all or a 20% boost in income. Or you're like me right now and you've been laid off. Now add on that you need to do it in 20 minutes, each minor mistake potentially becoming a devastating error if you don't catch it quickly.
I envy anyone who can just focus on the problem and remove all surrounding context. Still trying to figure out how I can add stress distractions while timing myself.
> I envy anyone who can just focus on the problem and remove all surrounding context. Still trying to figure out how I can add stress distractions while timing myself.
This is indeed a good thing to be able to do. I'm pretty good at it, but when I'm in an interview situation, I almost always have at least one moment where I start to panic a little and have to tell myself, "you know what you're doing, just relax and turn the crank." And of course, there's an implied "...but maybe you'll just choke," which I have to put out of my mind.
In other words, a huge part of being able to focus on the problem and remove the surrounding context is a sort of confidence that I can probably do fine, so I can temporarily stop worrying about how I'm looking at any exact moment.
Honestly the "right" answer in most of these types of questions is to search for a popular existing implementation. There is never a "we've got to solve this bubble sort algorithm in a locked room with no internet access" scenario. I get that they want to select for people who can solve problems by thinking their way through solutions with code, but I've never been convinced that solving leet code challenges is the way to do that. I'd also much rather solve problems without writing a bunch of code that has to be maintained, so engineers familiar with the tooling ecosystem for their platform of choice should be highly valued.
Meh. I used to compete on CS and Math problems and I passed the interview for a lot of big tech companies (senior and staff levels) and I don't think at any of them I could pass the interview if I truly had never seen even a variation of the problem I was given.
They want you to work pretty fast and you only have about 20 minutes to solve one problem at most companies, no way I could work my way through something completely new that quickly.
Maybe many PhDs attend conferences just because they have to have some paper/poster presentation rather than they are genuinely interested in making new connections? That's what I'm guilty of at least.