Bit Blog
blog.bitsrc.io · Company blog · on HN since 2017
Bit's publication on Medium covers JavaScript and React tooling, component libraries, and frontend architecture patterns.
What HN saysHN commenters link it to explain the backend-for-frontend pattern and why Nanoid is replacing UUID.
17HN people shared it
10linked it in comments
56stories submitted
286story points
2 years agolast shared
2017people per year2026
Most-shared posts
- 1Javascript utility libraries to know in 20184 people · 164 points · first shared 2018 · 82 comments on HN
- 211 React Component Libraries You Should Know in 20182 people · 6 points · first shared 2017 · discussion on HN
- 35 Tools for Faster Development in React2 people · 2 points · first shared 2018 · discussion on HN
- 4Introducing the Live React Component Playground2 people · 2 points · first shared 2018 · discussion on HN
- 5Building an Optimistic User Interface in React1 people · 42 points · first shared 2018 · 25 comments on HN
- 6Best React UI component libraries for 2018 – part 2. Enjoy1 people · 7 points · first shared 2018 · 1 comments on HN
- 7Keep Your Promises in TypeScript Using Async/await1 people · 3 points · first shared 2018 · discussion on HN
- 811 JavaScript Machine Learning Libraries to Use in Your App1 people · 3 points · first shared 2018 · discussion on HN
- 911 Vue Component Libraries You Should Know in 20181 people · 3 points · first shared 2017 · discussion on HN
- 1010 JavaScript IoT Libraries to Use in Your Next Project1 people · 2 points · first shared 2018 · discussion on HN
- 11How we started sharing components between projects1 people · 2 points · first shared 2017 · discussion on HN
- 12How to “Publish” Multiple Packages from Any Repository in 5 Minutes1 people · 2 points · first shared 2018 · discussion on HN
- 13Building reusable React components1 people · 2 points · first shared 2018 · discussion on HN
- 14Coding in the age of code components1 people · 2 points · first shared 2017 · discussion on HN
- 15React 16 – What can it do for you? – Part 21 people · 2 points · first shared 2018 · discussion on HN
What HN people wrote when they linked it
gorjusborg · 2022-04-16
Exactly. Async/await just an alternative way to represent a promise chain.
My feeling is that mixing the use of promise chains and async/await can make code hard to follow, so I ask colleages to not mix them in the same function.
Sure, async/await is syntactic sugar for a generator that chains promises into a promise chain for you. Not sure why you'd care. That is an implementation detail that never gets exposed to the user.
The only time I feel that promise chains are better async/await is when treating Promise as a monad https://blog.bitsrc.io/out-with-async-await-and-in-with-promise-liftin…
greatgib · 2022-03-30
Nanoid are really great. It is a smarter uuid4 with variable size and alphabet. It is also a lot faster to generate.
See that:
https://blog.bitsrc.io/why-is-nanoid-replacing-uuid-1b5100e62ed2
By definition, if you base62 or base64 your uuid4 it will be longer (30%?).
This generate directly in the final encoding so it is a lot shorter.
Based on the simulator calculation, you just need 24 chars to be equivalent to an uuid4 that is 35 chars.
But being able to determine the length of the resulting id is one of the greatest feature. Did it never happened to you the case that you would like a shorter uuid4 and think that you can just truncate it? Not realizing that some parts of the uuid have a special meaning and are not random...
talkingtab · 2024-08-17
A side question. The advantage of JSX I see is the ability to connect, declaratively, components. I find this very helpful in terms of understanding programs I write. I wonder if I use React not because of the virtual dom, but simply because of JSX.
So I would like to explore the ability to use JSX in non-DOM environments. react-three-fiber does this with Threejs, but then it is still React oriented. I found this article about parsing JSX https://blog.bitsrc.io/demystifying-jsx-building-your-own-jsx-parser-f… And I know babel has something that parses JSX.
Does anyone have recommendations for doing this. Threejs to me a good candidate - a non React version, since it is a hierarchical system (scene, meshes, materials etc), but I suspect there are other applications.
I made an attempt to implement a Javascript version of Hickey's transducers - a sort of conveyor belt of functions and that is another instance of a series of processing steps that might be best represented in JSX
sargstuff · 2023-12-16
Specifics depend on project(s)/work environment(s); but literate programming[0] and using/enforcing coding/git/versioning standards can help automate a lot of things[1][2][3].
aka re: outdated responses -- blog and/or email list for when 'new/updated version' pushed out with errata/change log location.
[0] : https://blog.bitsrc.io/literate-programming-a-radical-approach-to-writ…
[1] : https://blog.codacy.com/coding-standards
[2] : https://github.com/git-lfs/git-lfs/blob/main/.github/workflows/ci.yml#…
[3] : https://github.com/git-lfs/git-lfs/blob/main/.github/workflows/ci.yml#…
patates · 2023-06-06
Many have switched to a backend for frontend design (BFF). So you have another backend that proxies and/or uses the real backend and makes SSR and other frontend things.
A better explanation: https://blog.bitsrc.io/bff-pattern-backend-for-frontend-an-introductio…
ramesh31 · 2022-06-01
It's called a "BFF" (Backend For Frontend) https://blog.bitsrc.io/bff-pattern-backend-for-frontend-an-introductio…
It's a really nice pattern particularly for multi-client applications consuming the same resources. Instead of trying to make a single REST api work for desktop, mobile, and web, you can have a BFF for each which all share the same GQL definitions and data access patterns, but can have platform specific routing/handling/auth logic.
leshow · 2021-04-19
It's not just luke, here's a couple more, two of these I remember in particular the others are just from a google search
https://reasonablypolymorphic.com/blog/elm-is-wrong/
https://dev.to/kspeakman/elm-019-broke-us--khn
https://blog.bitsrc.io/elm-and-why-its-not-quite-ready-yet-2c516a81e25…
https://medium.com/@cscalfani/the-biggest-problem-with-elm-4faecaa58b7…
I've come to view Elm as someones personal compiler project. If you are good with the decisions made then you're going to have a fine time, otherwise you probably won't
FlorianRappl · 2020-04-10
Personally, I think this is a myth (https://blog.bitsrc.io/11-popular-misconceptions-about-micro-frontends…
Most our projects where microfrontends have been actively demanded (and we did now quite a lot of them) did not come up due to use of multiple frameworks. Yes, it is possible to use multiple technologies, but quite often there is key technology in place anyway. E.g., one of our clients had a huge pattern library written in React and demanded all microfrontends to be written in React.
So why then microfrontends at all? Well, all parts are still independent from each other, i.e., independently developed and deployed. Our client has multiple teams and like that these teams can just work in their own pace using a few guiding principles that have been given by the solution architecture.
throwaway13456 · 2018-06-13
Funnily enough, there's another post on HN's front page that (self) explains why JS is a flawed language:
https://blog.bitsrc.io/11-javascript-utility-libraries-you-should-know…
It's too big for a TLDR;
But, just #1 in that list - You need to use a utility library to work with data types in a normalized form? In 2018?? Let that sink in. I hadn't had to do this with any other language.
cookiecaper · 2019-06-14
Virtually everything is a dependency in JavaScript, whether you're using node.js or not. One need look no further than your citation of `open()` as the proof that the nodejs environment "has more stdlib stuff". If the operating environment can run in a context where file IO happens, a native file open function is about the most basic baseline there is. It's absolutely not a good look for "well, we have `open()`!" to be the poster child of the JS stdlib.
After `left-pad` and `flatmap-stream`, attempts to justify the state of affairs in the JS ecosystem are patent absurdities. They show starkly that the platform vendor needs to offer a reasonably-robust basic toolkit, and that cultures of "every function should be published as a library!" are a massive risk factor.
A good first-party standard library should be considered a security requirement for every application. Dependencies should be brought in with care and attention, not in a massive indiscriminate orgy of nested modules spraying every function into its independent own library and resulting in every node.js application requiring its own 500MB+ folder of libraries to even start.
Think it doesn't get worse? People are now using node.js to distribute "business cards". Arbitrary JavaScript execution on your local user account. Has science gone too far?! Someone at npmjs.com sure has by allowing this kind of thing. [0]
The technical world is crumbling. Who can fix it?
[0]…