I feel bad because while I don’t reach for react (I usually pick Vue or vanilla), people’s comments about react is really depressing.
There’s a LOT of shitty react code. And when you see beautiful react implementation, it’s like a work of art.
Unfortunately, react projects have been given to by bootcamps grads with 6 months of experience and it’s like the blind leading the blind…
I wonder if it’s like PHP. Lots of people shit on it because they had to futz around in a garbage project written by garbage developers, fully unaware that it can be elegant in the hands of a professional team who cares about code quality.
The problem with some of the comments here is that even “properly” written React CAN hit a performance bump, and optimization is a rather rare skill no matter the programming context (kinda due to little time given to it, so everyone is out of practice).
But I don’t know which ones are the ones talking about that, and which ones are just people annoyed at anything Node in general.
I wonder if it’s like PHP. Lots of people shit on it because they had to futz around in a garbage project written by garbage developers, fully unaware that it can be elegant in the hands of a professional team who cares about code quality.
You can apply this reasoning to any [web] technology. The reason it’s so visible for react, and previously PHP, is simply popularity.
Yep, finding people who understand React is hard. The majority of people who say they’re an expert in React are either coding bootcamp fresh grads or someone who’s entrenched in writing shitty React so by having them join there’s basically no difference in skill with a fresh grade hire or a fourth year college student intern.
What’s wrong with bootcamps? Honest question, as I’ve been learning to code from a python book and an “expensive” udemi course that was on sale for 20 bucks
I’d never tell people I know how to program though. I’m definitely still learning
Sometimes, if all you know is how to use a hammer, everything will look like a nail.
That’s the impression that I got from working with several bootcamp graduates. Most people who enroll are usually people who think that there’s a lot of money to be had being an SWE. However because usually bootcamps are 3-6 months max you’re just being taught how to use a specific tool to accomplish a general use case that’s already been solved many times. However, as an example in my workplace, we deal with a lot of R&D PoC projects and develop our own internal solutions due to security or law requirements from our clients. So if you’re stuck when working in one of our projects due to something, there’s no post related to that in StackOverflow.
In one case, during development I found a bug in one of the third party libraries that we use and after creating an issue in their GitHub, even the library’s maintainer is stumped. We decided to create a new internal library that solves the specific problem we’re having.
If you’re a bootcamp graduate working on that kind of project, it can be shocking.
Having a college degree can help set up your mindset work in a software engineering project.
Although it’s not necessary, because I’ve known a lot of great dev with no CS degree. But it’ll take a lot of time working in projects with a lot of different cases. Maybe it’s just that my workplace doesn’t really have a suitable kind of project for people with not a lot of experience. However lately we’ve hired a lot of fresh grads with good grades and it’s been a breeze when onboarding them to our engineering standards.
We’ve had several hires from bootcamp but there’s only one who’s a good engineer.
Take this with a grain of salt though, as lots of people can testify that they had a good experience with bootcamp grads. So maybe I’m the one who’s unlucky. YMMV.
Ah. See, I’m using bootcamps as a intro type of learning. I’ve also been just doing my own thing by learning how to make scrapers and all that (even though that’s kind of cheating because it’s just scrapy) but I’m trying to learn the fundamentals of the language so that I don’t need to just Google “how to do this” I want to be able to just do it
Not necessarily “wrong” but a weakness is that they tend to focus on concrete language syntax and skimp on abstract software design, and data structures and algorithms. The result is a programmer who knows how to write code, but may struggle on larger projects or more complicated problems, compared to a computer science or software engineering graduate.
Of course I’ve met developers from applied courses and boot camps who are driven, passionate, and gifted who have gone on to make excellent system designers and software architects, but generally speaking, knowing how to code alone does not make one a software developer.
Something is either true or false, I would expect to have at least 50% of a chance to get it right on the first try. Nah, I fail to implement it three times because my brain went on vacation without telling me.
FWIW, I suspect these stairs have been photographed before adding wood steps that are deeper/wider. I base that on the low visible height of the bottom step. A 1.5-2 inch wooden slab would normalize the height of each step.
I think that’s the only thing I dislike about rust. Not having to use * to dereference but later having to use is tad confusing. I know it’s still clever solution but in this case I prefer c++'s straightforward consistency.
C++ does have the problem that references are not objects, which introduces many subtle issues. For example, you cannot use a type like std::vector<int&>, so that templated code will often have to invoke std::remove_reference<T> and so on. Rust opts for a more consistent data model, but then introduces auto-deref (and the Deref trait) to get about the same usability C++ has with references and operator->. Note that C++ will implicitly chain operator-> calls until a plain pointer is reached, whereas Rust will stop dereferencing once a type with a matching method/field is found. Having deep knowledge of both languages, I’m not convinced that C++ features “straightforward consistency” here…
So you can have a local, and a team config. So at time of commit the code rules your team has selected are enforced. So if I looked at my code, on GitHub, it would look as expected by the team.
I love such formatters and wish they were even more widespread. In many cases, I really want consistency above all and it’s so dang hard to achieve that without an opinionated formatter. If the formatters isn’t opinionated enough, it just leads to countless human enforced rules that waste time (and lead to an understandable chorus of “why can’t the formatter just do that for meeeee”).
Yeah but outside of that where the code is implemented or in a documentation, tabs are still easier to look through. And it does look pretty as long as there aren’t too many nested functions.
That’s really interesting. So does that mean the interpreter just checks whether the current line is more indented, less indented, or equal vs. the preceding, without caring by how much?
Ironically, such a site would more bugs then of it would use Javascript. And security issues are still an issue too.
Basically everything has to be handled through forms and a site reload and hidden components and lots of css :hover events. Have you ever tried making a dropout without Javascript? It isn’t impossible, but really hard.
And such sites exist. Just that they’re mostly Darknet sites like like Dread or Bohemia
dropout menus are actually pretty easy to do without js
all you need is focus-within and friends.
like i recently made one on my personal project (which fully works without js, which is only used for realtime chat functionality and some additional effects, like loading icons in forms and stuff)
That’s pretty impressive. I tried doing something similar a few months ago but couldn’t find anything. Are you using a framework or how do you render the site on the server?
Pretty cool. Btw on your 404 page, the footer is in the center of my screen (vertical center). I am on android using Firefox. I hit the 404 error trying out the search bar. Just thought you might like to know.
Programming languages that use white space to delimit structure are annoying at best. I get annoyed at yaml too, but I’m ok once I have a few templates set up.
These things actually matter, come up often enough to actually be annoying, and are a bit difficult to explain and learn into people. You’re basically fine if you just string quote everything that you can, but nobody does that.
Except that you have to either indent with only tabs or indent with only spaces. Any time you mix tabs and spaces you are just asking for disaster.
If you indent with only tabs you can’t align things except on tab boundaries. If you have a function that takes 10 parameters and want to do it on multiple lines, the alignment of the extra parameters is going to be ugly.
If you indent with only spaces, you can indent things so that all the parameters line up directly underneath the parenthesis, for example.
I agree we shouldn’t mix tabs with spaces. But use tabs always. I could line up parameters together but may not be just under parentheris, and it looks good and readable for me
That’s a super risky way to do it. It might stop giving you errors because you finally got the indentation right, or it might stop giving you errors because you got the indentation “right” but not how you you meant to organize the objects.
Ugh, there’s some parts of YAML I love, but ultimately it’s a terrible format. It’s just too easy to confuse people. At least it has comments though. It’s so dumb that JSON doesn’t officially have comments. I’ve often parsed “JSON” as YAML entirely for comments, without using a single other YAML feature.
YAML also supports not quoting your strings. Seems great at first, but it gets weird of you want a string that looks like a different type. IIRC, there’s even a major version difference in the handling of this case! I can’t remember the details, but I once had a bug happen because of this.
Performance wise, both YAML and JSON suck. They’re fine for a config file that you just read on startup, but if you’re doing a ton of processing, it will quickly show the performance hit. Binary formats work far better (for a generic one, protobuffers has good tooling and library support while being blazing fast).
json 5 does support comments. alternatively, yaml is a superset of json. any valid json is also valid yaml. but yaml also supports comments. So you can also write json with comments, and use a yaml parser on it, instead of a standard json parser
It’s so dumb that JSON doesn’t officially have comments.
So much this.
Used to work at a company where I sometimes had to manually edit the configuration of devices which were written and read in JSON. Super inconvenient if you have to document all changes externally. As a “hack” I would sometimes add extra objects to store strings (the comments). But that’s super dicey as you don’t know if it somehow breaks the parsing. You’re also not guaranteed the order of objects so if the configuration gets read, edited and rewritten your comment might no longer be above/below the change you made.
Always found it baffling that such a basic feature is missing from a spec that is supposed to cover a broad range of use cases.
programmer_humor
Active
This magazine is from a federated server and may be incomplete. Browse more on the original instance.