arendjr

joined 1 year ago
[–] arendjr 1 points 6 days ago* (last edited 6 days ago) (1 children)

Haha, sure thing!

So, today, TurboPascal isn’t a very popular programming language anymore. But that’s okay! We have new programming languages nowadays. Some of the popular languages that we use today include JavaScript, TypeScript and CSS. You don’t need to know much about these languages, except that they’re commonly used for creating websites and apps that run on the web.

Now, assume you want to create a website or a webapp, and you were to learn these languages for that purpose. In that case you have quite a learning experience ahead of you, which is great! Learning can be fun! But what’s not so great is that these languages have lots of room to make mistakes. Now, everyone makes mistakes, that’s just a fact of life, but when mistakes can be avoided, that’s generally preferred.

This is where Biome comes in: It is a tool – we call it a linter – that helps you to detect many kinds of common mistakes. It can show you where these mistakes are, and sometimes even fix them for you. It can also show you possible mistakes, things that are not necessarily a mistake, but things that look suspicious.

And on top of that, Biome offers you another tool: It’s called a formatter. When you write your code, it automatically takes care for you that the code looks consistent. So it fixes things like indentation and other use of whitespace for you, as well as where to place your parentheses and stuff like that.

Together, hopefully these two things can make your programming experience a little bit more enjoyable. Cheers!

[–] arendjr 2 points 6 days ago (1 children)

They’re included in the beta!

Specifically, you can create GritQL plugins for custom linter diagnostics. There’s certainly more we’d like to do on that front, but we’re first going to see how these are being received to decide where to prioritise next.

[–] arendjr 1 points 6 days ago (1 children)

I don’t have Nix experience myself, but what would it take to be better supported there? I think we’d be open to PRs for that ☺️

[–] arendjr 2 points 6 days ago

We don’t currently publish to Crates.io, but we do have CI integrations that can install without needing NPM.

[–] arendjr 2 points 6 days ago* (last edited 6 days ago) (3 children)

Formatter and linter in one even :) I’ve updated the message at the top.

10
Biome v2.0 beta (biomejs.dev)
submitted 1 week ago* (last edited 6 days ago) by arendjr to c/webdev
 

Biome lead here, so feel free to ask anything!

Biome is an integrated linter and formatter with support for JavaScript, TypeScript, CSS, and more.

Highlights of the release:

  • Plugins: You can write custom lint rules using GritQL.
  • Domains: Domains help to group lint rules by technology, framework, or well, domain. Thanks to domains, your default set of recommended lint rules will only include those that are relevant to your project.
  • Multi-file analysis: Lint rules can now apply analysis based on information from other files, enabling rules such as noImportCycles.
  • noFloatingPromises: Still a proof-of-concept, but our first type-aware lint rule is making an appearance.
  • Our Import Organizer has seen a major revamp.
  • Assists: Biome Assist can provide actions without diagnostics, such as sorting object keys.
  • Improved suppressions: Suppress a rule in an entire file using // biome-ignore-all, or suppress a range using // biome-ignore-start and // biome-ignore-end.
  • HTML formatter: Still in preview, this is the first time we ship an HTML formatter.
  • Many, many, fixes, new lint rules, and other improvements.
[–] arendjr 10 points 1 week ago

I think it’s the latter. I once had to take care of a sick friend who was pretty much puking her guts out. Her moans sounded arousing. Of course she wasn’t intentionally doing that, it’s just our own male brains playing tricks on us.

[–] arendjr 1 points 1 week ago

I’m making a case for custom codes, not for using a 200 status code with it. My reply said the 200 didn’t make sense.

Of course once you use custom codes, the actual HTTP status codes do become less important, because there’s some redundancy there. That’s not an argument to do it wrong, but it is an argument that accurate HTTP status codes are less of a priority. So understandably some people will take shortcuts.

Apparently you find this very frustrating, but in the end it’s just an implementation detail. But it also sounds like you’re more frustrated with the service API as a whole than the fact it uses custom error codes specifically, so I’m just going to leave it at that.

[–] arendjr 5 points 1 week ago

I’m not arguing against that. Merely providing some counterweight to the idea that the author was “flinging shit in the trenches” 😅

[–] arendjr 12 points 1 week ago (2 children)

I found the title of that section slightly triggering too, but the argument they lay down actually makes sense. Consistency helps you to achieve correctness in large codebases, because it means you don’t have to reinvent what is correct over and over in separate pockets of the codebase. Such pockets also make incremental improvements to the codebase harder and harder, so they do come back to bite you.

Your example of vendors doesn’t relate to that, because you don’t control your vendor’s code. But you do control your organisation’s.

[–] arendjr 3 points 1 week ago* (last edited 1 week ago) (3 children)

Well, looking at your example, I think a good case can even be made for it.

“s23” doesn’t look like an HTTP status code, so including it can make total sense. After all, there’s plenty of reasons why you could want custom error codes that don’t really align with HTTP codes, and customised error messages are also a sensible use case for that.

Of course duplicating the actual HTTP status code in your body is just silly. And if you use custom error codes, it often still makes sense to use the closest matching HTTP status code in addition to it (so yeah, I agree the 200 in your example doesn’t make a lot of sense). But neither of those preclude good reasons for custom codes.

[–] arendjr 1 points 2 weeks ago (1 children)

Oh, and then I pair it with a very boring Dell mouse for extra style.

 

Recent events in #politics triggered me to write a manifesto on the values of #Democracy and what we can to do preserve them.

 

Recent events in #politics triggered me to write a manifesto on the values of #Democracy and what we can to do preserve them.

9
submitted 2 months ago by arendjr to c/webdev
 

Biome project lead here, so feel free to ask questions!

13
Zero Bugs (bugs.rocicorp.dev)
submitted 3 months ago by arendjr to c/programming
13
submitted 4 months ago by arendjr to c/javascript
 
46
DirectX Adopting SPIR-V (devblogs.microsoft.com)
submitted 6 months ago* (last edited 6 months ago) by arendjr to c/linux
 

SPIR-V is the intermediate shader target used by Vulkan as well, so it sounds like this may indirectly make DirectX on Linux smoother.

 

Biome v1.9 is out!

Today we celebrate both the first anniversary of Biome 🎊 and the release of Biome v1.9! Read our blog post for a look back at the first year and the new features of Biome v1.9.

In a nutshell:

  • Stable CSS formatting and linting. Enabled by default!
  • Stable GraphQL formatting and linting. Enabled by default!
  • .editorconfig support. Opt-in
  • biome search command to search for patterns in your source code.
  • New lint rules for JavaScript and its dialects.
view more: next ›