What leads you to believe that fizzbuzz is a relevant litmus test for competent software developers?
1,581 karma · joined October 22, 2022
What leads you to believe that fizzbuzz is a relevant litmus test for competent software developers?
Are they, though? Or are you just trying to put up a strawman?
Because I assure you plenty of highly reliable infrastructure is running 24-7 without the faintest concern over normalization.
It isn't. Half the world already relies on ORM frameworks that barely require any input from the developer to setup relational databases, let alone knowledge on how to normalize them.
On the rare occurrences a project feels that specialization on relational database design is relevant, more often than not it's far more useful to require expertise on specific RDBMS than trivia tricks.
> If those things aren't math to you (...)
You're missing the whole point. No one is arguing that you have math formalisms. The whole point is that those formalisms do not add any value at all. Don't you understand that?
I mean, I can whip out a web app with multiple services running in the backend and with datastore using both DynamoDB and S3, and build a business around it. We can do this without ever knowing who Jack or Joe or Jim or Jose Cobb was, let alone what he wrote. What does it tell you?
Pointless. They are OO courses, not FP courses. You have FP courses already covering that.
> second that under the hood everything can be shoehorned to object model.
You do not need lambdas or FP for that.
So, what's the point of lambdas and FP in a OO course?
For starters, if you can't argue what is the value then none can fill in the void in your reasoning.
Secondly, software developers have as part of their job description the task of finding solutions to problems. If they find solutions to problems that don't involve or require whatever trick you have in mind, that tells you what is it's value.
Thirdly, did you ever saw any job advert explicitly requiring prior knowledge of any trick you have in mind? Or do you see ads for the ability to solve problems with a pre established software stack?
> who can't multiply and shift t
Tell me, how many open positions have you ever saw whose main ask was "can multiply and shift"? Zero.
> That would be like Google hiring engineers who only got good because they're good at using Google.
No, it would be like Google hiring people without any CS or IT degree who were good at software development but rejecting PhDs who had nothing to offer other than their little trivia on stuff no one cares about.
You know, reality.
What role do you believe lambdas and support for functional programming play in object-oriented programming courses?
Java20 did not introduced inheritance, nor did it introduced any OO concept. Java20 adds no value to those learning OO. If you're writing java code but are not using any Java20 feature, you are not writing Java20 code.
> Working with an outdated version (...)
It is not outdated. You are not using any feature. You're just succumbing to the misplaced belief that new means more value. It doesn't, specially when the only thing that you get is more complexity.
> Sure, but that doesn't mean knowledge of newer features (...)
Repeat after me: Java20 adds no OO feature. You do not have to use Java20 to learn OO. OO courses are not java courses. Do you understand this?
You mean good enough?
Software developers aren't paid to write code. They are paid to deliver value.
Your code delivers no value whatsoever. Many masters and PhD thesis are boiled down to a shareable library or even function call. You might feel clever for coming up with it or by knowing some trivia behind it, but ChatGPT can easily spit it out negating all the value you believe you were able to create.
There is no value in something being hard. There is value in delivering value.
Cubicles are still a way to treat employees like cattle. Except that this free-range approach to cubicles mixes the worst of cubicles with not having ways to deal with interruption, distraction, noise.
That doesn't mean open space offices are better. Free range cattle is still cattle, isn't it?
Working from home is like working in your private office, which in the 90s was reported as a perk and a status symbol.
This is not ironic. It sounds like a disingenuous ploy to force employees out of the company without having to pay them what they owe or deal with the fallback.
Amazon seems to be pulling the same stunt.
The coincidence between mass layoffs and forced return to office starts to look like a massive wave of workplace bullying, and I'd be surprised if it wasn't breaking laws.
What's wrong with that?
You're supposed to cover the basics in intro to programming courses, and typically Java is not outright taught in college, and instead it's object-oriented programming using a random OO language, which more often than not is Java. Do you need to use Java20 to learn inheritance?
Also, unless you expect to work exclusively on greenfield projects, the bulk of any developer work is maintaining legacy applications. I still see an awful lot of projects in java 8 and only a few in java 11. Insisting on the latest and greatest java release makes as much sense as pressing to cover Lombok or Kotlin.
This bears repeating.
It's important to learn how to deal with asynchronous and concurrent and parallel programming, but it's more important to have a firm grasp of message-passing and event-driven architectures.
Rote learning the computational complexity of obscure algorithms no one uses does not hold a candle to knowing how to write clean and testable code, and design a component to accommodate changes.
This computer science bullshit starts to feel a lot more like an exercise in ladder-pulling than actually prepare and assess an individual's ability to do meaningful work.
How many database programmers do you know who ever did anything involving relational algebra when creating or tuning up a database?
This point is specially pointless with the prevalence of ORM frameworks.
> There’s math and science behind concurrency and parallelism, and the coordination thereof.
Please find me the best example you can come up of what you see as math being put to practice in concurrent programming.
> Network programming is a practical application of several parts (...)
This is too much grasping at straws. Just show what you feel is the absolute best example.
> There’s more that is often left out.
There is nothing. You showed nothing as your best examples, and once you showed nothing you were left with nothing else to show.
Enough with this silly "but it is math" nonsense. You can come up with a math formalization of an egg but that does not mean a degree in math will help you boil one. Enough with this nonsense.
Some of the traffic doesn't leave the server, let alone the server rack.
I'd wager these costs have zero to do with operational or infrastructure costs, and are just a way to price gouge customers.
System engineering is not measured in dollars per byte transfered.
In your own, exactly what point did you tried to make? Complaining that x and y technology users joined the "whoops" crowd when those technologies are in fact well established and proved to be effective if not nearly optimal in some applications, what do you perceive as "whoops"?
Frankly, it didn't seemed you had a point to make other than parroting cliches.
No, you aren't. You're paying for the service following an arbitrary pricing model that bears no relationship with their business costs.
Let's call AWS's "Free ingress, expensive/hard egress" business model as the AWS roach trap pattern.
But bandwidth is free in intra-node traffic, isn't it? I mean, in some scenarios this traffic doesn't even leave the server. What does localhost traffic cost you?
The discussion topic is about anticompetitive practices.
AWS charges a premium on intra-region traffic, when other cloud providers do not. The thesis is that these arbitrary charges are designed to force users to consume their managed services which further leads to vendor lock-in.
Can these arbitrary intra-region traffic charges be interpreted as anticompetitive practices? I believe there's a good case to be made. Don't you agree?
Namecheap advertises cheap domains when, as covered in this discussion, it jacks up prices. This is impossible to defend even by the staunchest corporate shill.
Anyone can opt to go off tangents playing semantics games. Meanwhile, if a company portrays itself as selling cheap products and services and then charges a hefty premium in exchange for nothing, they deserve being called out on what amounts to false advertising.
I'd wager that AWS's marginal cost for intra-region traffic is zero. They own their infrastructure and other than maintenance and upgrades they have no cost linked with traffic volume.
Some cloud providers charge a round zero for intra-region traffic, and they don't have anything resembling AWS's scale. I doubt it's a loss leader.
I disagree. If a company portrays itself explicitly or implicitly as offering low prices them it's more than fair when they jack up prices.
Namecheap's own description is "Buy cheap domain names and enjoy 24/7 support."
I do not understand why people feel the need to play the role of a corporate white knight and do their best to shield them from any criticism.
Why do you think it's a good idea to assemble a whole new computer just because you want more storage?
Not niche at all. Using a RAM disk for building C++ applications is one of the oldest and most basic build optimization tricks around. It's specially relevant when using build cache tools like cache, which lead large C++ builds to no longer be CPU bound and become IO bound.