- Feb 2021
-
trailblazer.to trailblazer.to
-
What this means is: I better refrain from writing a new book and we rather focus on more and better docs.
I'm glad. I didn't like that the book (which is essentially a form of documentation/tutorial) was proprietary.
I think it's better to make documentation and tutorials be community-driven free content
-
The new 2.1 version comes with a few necessary but reasonable changes in method signatures. As painful as that might sound to your Rails-spoiled ears, we preferred to fix design mistakes now before dragging them on forever.
-
The new call API is much more consistent and takes away another thing we kept explaining to new users - an indicator for a flawed API.
-
Also, the more I use Trailblazer in projects or even in Trailblazer itself, I feel how needed those new abstractions are.
Tags
- if it's incorrect; fix it
- I'm glad they did it this way
- focus on the user
- welcome/good change
- documentation
- free content
- community-driven development
- do it right/well the first time because it may be too hard to clean up/fix later if you don't
- knowledge commons (information/data/content)
- learn from your mistakes
- how did we ever live without it?
- non-free content
- abstractions
- pointing out gaps/downsides/cons in competition/alternatives
- annotation meta: inherit same annotation/tags
- finally / at last
- I agree
- fix design/API mistakes as early as you can (since it will be more difficult to correct it and make a breaking change later)
- better late than never
Annotators
URL
-
-
2019.trailblazer.to 2019.trailblazer.to
-
This creates a win-win situation, you as the user have your peace of mind, and we can continue working with your funds.
-
-
github.com github.com
-
While Trailblazer offers you abstraction layers for all aspects of Ruby On Rails, it does not missionize you. Wherever you want, you may fall back to the "Rails Way" with fat models, monolithic controllers, global helpers, etc. This is not a bad thing, but allows you to step-wise introduce Trailblazer's encapsulation in your app without having to rewrite it.
Tags
- Trailblazer
- making changes / switching/migrating gradually/incrementally/step-wise/iteratively
- leaving the details of implementation/integration up to you
- abstractions
- newer/better ways of doing things
- focus on concepts/design/structure instead of specific/concrete technology/implementation
- freedom of user to override specific decision of an authority/vendor (software)
- focus on what it should do, not on how it should do it (implementation details; software design)
- rails: the Rails way
- allowing developer/user to pick and choose which pieces to use (allowing use with competing libraries; not being too opinionated; not forcing recommended way on you)
Annotators
URL
-
-
-
In Ruby 3 we now have a “rightward assignment” operator. This flips the script and lets you write an expression before assigning it to a variable. So instead of x = :y, you can write :y => x
-
-
github.com github.com
-
compose(Add, x: x, y: 3)
How is this better than simply:
Add.run(x: x, y: 3)
?
I guess if we did that we would also have to remember to handle merging errors from that outcome into self...
-
Why is all this interaction code better? Two reasons: One, you can reuse the FindAccount interaction in other places, like your API controller or a Resque task. And two, if you want to change how accounts are found, you only have to change one place.
Pretty weak arguments though...
- We could just as easily used a plain object or module to extract this for easy reuse and having it in only one place (avoiding duplication).
-
For this one we'll define a helper method to handle raising the correct errors. We have to do this because calling .run! would raise an ActiveInteraction::InvalidInteractionError instead of an ActiveRecord::RecordNotFound. That means Rails would render a 500 instead of a 404.
True, but why couldn't it handle this for us?
Tags
- active_interaction
- library/framework should provide this (standard solution) rather than everyone having to write their own slightly different solution (even if it is easy enough to write yourself)
- good point
- I have a question about this
- why is it better?
- reusability
- avoid duplication
- software development: code organization: where does this code belong?
Annotators
URL
-
-
github.com github.com
-
No one has requested it before so it's certainly not something we're planning to add.
-
I'm sure there will be a few other people out there who eventually want something like this, since Interactions are actually a great fit for enforcing consistency in data structures when working with a schemaless NoSQL store, but obviously it's still a bit of a niche audience.
-
To give a little more context, structures like this often come up in my work when dealing with NoSQL datastores, especially ones that rely heavily on JSON, like Firebase, where a records unique ID isn't part of the record itself, just a key that points to it. I think most Ruby/Rails projects tend towards use cases where these sort of datastores aren't appropriate/necessary, so it makes sense that this wouldn't come up as quickly as other structures.
-
-
github.com github.com
-
I don't think seeing it in Rails PRs naturally means we should do it blankly. Put it another way, what's the justification in those PRs for doing it?
Tags
- justification for existence
- rationale
- understand both sides of an issue
- investing time to really understand something
- understand the ramifications/effects/consequences
- why?
- doing something without knowing why/how it works
- fallacy: doing something because it's popular / everyone is doing it
- understand the trade-offs
Annotators
URL
-
-
github.com github.com
-
The assert method is used by all the other assertions. It pushes the second parameter to the list of errors if the first parameter evaluates to false or nil.
Seems like these helper functions could be just as easily used in ActiveRecord models. Therefore, they should be in a separate gem, or at least module, that can be used in both these objects and ActiveRecord objects.
-
-
davefleet.com davefleet.com
-
From my perspective the onus is on you to consider not just the words coming out of your mouth, but how they are received.
-
-
www.infoworld.com www.infoworld.com
-
Consequently, you act irresponsibly when you adopt any programming practice simply because "that's the way you're supposed to do things."
-
My point is that you should not program blindly. You must understand the havoc a feature or idiom can wreak. In doing so, you're in a much better position to decide whether you should use that feature or idiom. Your choices should be both informed and pragmatic.
-
And just because a feature or idiom is commonly used does not mean you should use it either.
-
-
softwareengineering.stackexchange.com softwareengineering.stackexchange.com
-
The more important point comes from a program design perspective. Here, "programming to an interface" means focusing your design on what the code is doing, not how it does it. This is a vital distinction that pushes your design towards correctness and flexibility.
-
-
-
It makes me happy to see people actually think about things and not just accept a shitty API.
Tags
- describe the ideal hypothetical solution
- don't settle for/accept something that's not as good as it can be
- doing something without knowing why/how it works
- actually consider / think about how it _should_ (ideally) be
- "makes me happy when ..."
- can we do even better?
- intentional/well-considered decisions
- less than ideal / not optimal
Annotators
URL
-
-
-
I do think it's a common pattern that should be solved, and I am probably going to try and solve it as a Gem as opposed to simply writing code that we use in our code base
-
with ActiveForm-Rails, validations is the responsability of the form and not of the models. There is no need to synchronize errors from the form to the models and vice versa.
But if you intend to save to a model after the form validates, then you can't escape the models' validations:
either you check that the models pass their own validations ahead of time (like I want to do, and I think @mattheworiordan was wanting to do), or you have to accept that one of the following outcomes is possible/inevitable if the models' own validations fail:
- if you use
object.save
then it may silently fail to save - if you use
object.save
then it will fail to save and raise an error
Are either of those outcomes acceptable to you? To me, they seem not to be. Hence we must also check for / handle the models' validations. Hence we need a way to aggregate errors from both the form object (context-specific validations) and from the models (unconditional/invariant validations that should always be checked by the model), and present them to the user.
What do you guys find to be the best way to accomplish that?
I am interested to know what best practices you use / still use today after all these years. I keep finding myself running into this same problem/need, which is how I ended up looking for what the current options are for form objects today...
- if you use
-
DSLs can be problematic for the user since the user has to manage state (e.g. am I supposed to call valid? first or update_attributes?). This is exactly why the #validate is the only method to change state in Reform.
-
Trust me, I thought a lot about #validate and its semantics, and I am gonna make it even more "SRP" by making Form#errors and #valid? semi-public. All that happens via #validate reducing the possible wrong usage for users.
-
I apologize for the slow development of Reform after the "explosion" when I released it initially. The reason for this is I changed jobs and didn't use Reform (yet).
Tags
- using your project at work
- missing the point
- reform (Ruby)
- good point
- order is important / do things in the right order
- general solution
- making it easy to do the right thing
- motivation
- hard to find time/be motivated to build/maintain unless you use it yourself (motivation; maintenance)
- whose responsibility is it?
- making it easy to do the wrong thing
- sharing/publishing your code so others can use it/benefit too
- overlooking/missing something
- state management
- have to remember
- I have a differing opinion
- DSL
- rails: validation
- common pattern
- intentional/well-considered decisions
- single responsibility
- make it hard to get wrong/incorrect
Annotators
URL
-
-
-
if you name you instance variable form, then you can always just pass in params[:form]
-
Writing the uniqueness validations yourself is easy so I felt it was better to leave this up to the developer
-
-
cherrycreekschools.instructure.com cherrycreekschools.instructure.com
-
I am wondering the same exact thing.
-
-
www.metacritic.com www.metacritic.com
-
Yes, you do face difficult choices (moral) but you don't care about it. All you care are the reputation bars. So... Let's kill this guy, who cares if he is innocent, but this faction needs it or I'm dead. Sounds great on paper but to be honest... you just sit there and do whatever for these reputation bars. If you won't, then you lose
-
-
hilton.org.uk hilton.org.uk
-
We also find it hard to agree on what good names and bad names look like, which makes it hard to know when renaming improves a name.
-
Naming matters for both idealogical and practical reasons.
-
Anyone who has ever tried to name a child knows that naming is hard. Naming things in code is harder. It’s bad enough that you have to commit to a name that someone isn’t going to like. You also have to be able to live with it.
-
-
www.reddit.com www.reddit.com
-
It's difficult because it's a case-by-case basis - there is no one right answer so it falls into subjective arguments.
-
Space: Suppose we had infinite memory, then cache all the data; but we don't so we have to decide what to cache that is meaningful to have the cache implemented (is a ??K cache size enough for your use case? Should you add more?) - It's the balance with the resources available.
-
Time: Suppose all your data was immutable, then cache all the data indefinitely. But this isn't always to case so you have to figure out what works for the given scenario (A person's mailing address doesn't change often, but their GPS position does).
Tags
- caching
- how good/perfect does it really need to be?
- cache invalidation
- limited resources (computing)
- subjective arguments
- why is it difficult/hard?
- trade-offs
- balance
- cache invalidation is hard
- more than one right way (no one right/best way)
- how recent/fresh/up-to-date does it need to be? 
Annotators
URL
-
-
www.quora.com www.quora.com
-
So the hard and unsolvable problem becomes: how up-to-date do you really need to be?
-
After considering the value we place, and the tradeoffs we make, when it comes to knowing anything of significance, I think it becomes much easier to understand why cache invalidation is one of the hard problems in computer science
the crux of the problem is: trade-offs
-
The non-determinism is why cache invalidation — and that other hard problem, naming things — are uniquely and intractably hard problems in computer science. Computers can perfectly solve deterministic problems. But they can’t predict when to invalidate a cache because, ultimately, we, the humans who design and build computational processes, can’t agree on when a cache needs to be invalidated.
Tags
- how good/perfect does it really need to be?
- good question
- knowledge
- trade-offs
- where it shines / best application
- good explanation
- computers
- main/key/central/essential/core thing/point/problem/meat
- good point
- cache invalidation is hard
- hard things in computer science
- deterministic
- nondeterministic
- generalized explanation
Annotators
URL
-
-
copyheart.org copyheart.org
-
Creating more legally binding licenses and contracts just perpetuates the problem of law – a.k.a. state force – intruding where it doesn’t belong.
-
-
www.honeybadger.io www.honeybadger.io
-
Now if you think about it, PJAX sounds a lot like Turbolinks. They both use JS to fetch server-rendered HTML and put it into the DOM. They both do caching and manage the forward and back buttons. It's almost as if the Rails team took a technique developed elsewhere and just rebranded it.
-
-
www.reddit.com www.reddit.com
-
when it comes to personal machines, I expect them to just work so I can work.
-
-
www.reddit.com www.reddit.com
-
And honestly, most people prefer the no hassle, especially after wasting too much time dabbling with distros that are "for advanced users" troubleshooting all kinds of dumbass problems that just worked out of the box in many other distros.
-
-
jakearchibald.com jakearchibald.com
-
This nav bar by Chris Coyier is a great example of something that makes more sense as a flexbox than grid.
-
Flexbox's strength is in its content-driven model. It doesn't need to know the content up-front. You can distribute items based on their content, allow boxes to wrap which is really handy for responsive design, you can even control the distribution of negative space separately to positive space.
-
-
stackoverflow.com stackoverflow.com
-
that's a point, but I would say the opposite, when entering credit card data I would rathre prefer to be entirely in the Verified By Visa (Paypal) webpage (with the url easily visible in the address bar) rather that entring my credit card data in an iframe of someone's website.
-
-
stackoverflow.com stackoverflow.com
-
If you teach your users to trust that URL bar is supposed to not change when they click links (e.g. your site uses a big iframe with all the actual content), then the users will not notice anything in the future either in case of actual security vulnerability.
-
Your browser window is basically just one big iframe.
-
-
medium.com medium.com
-
The point is, just because you don’t see it, doesn’t mean it’s not happening. It’s been more than two years and as far as I know, no one has ever noticed one of my requests. Maybe it’s been in your site this whole time
-
- Jan 2021
-
www.facebook.com www.facebook.com
-
Group Rules from the Admins1NO POSTING LINKS INSIDE OF POST - FOR ANY REASONWe've seen way too many groups become a glorified classified ad & members don't like that. We don't want the quality of our group negatively impacted because of endless links everywhere. NO LINKS2NO POST FROM FAN PAGES / ARTICLES / VIDEO LINKSOur mission is to cultivate the highest quality content inside the group. If we allowed videos, fan page shares, & outside websites, our group would turn into spam fest. Original written content only3NO SELF PROMOTION, RECRUITING, OR DM SPAMMINGMembers love our group because it's SAFE. We are very strict on banning members who blatantly self promote their product or services in the group OR secretly private message members to recruit them.4NO POSTING OR UPLOADING VIDEOS OF ANY KINDTo protect the quality of our group & prevent members from being solicited products & services - we don't allow any videos because we can't monitor what's being said word for word. Written post only.
Wow, that's strict.
-
-
www.zdnet.com www.zdnet.com
-
Systemd flies in the face of the Unix philosophy: 'do one thing and do it well,' representing a complex collection of dozens of tightly coupled binaries
-
-
blog.linuxmint.com blog.linuxmint.com
-
We informed and documented. We made it easy for you to understand the problem and also to take action if you disagreed. I hope you didn’t read https://linuxmint-user-guide.readthedocs.io/en/latest/snap.html#how-to-install-the-snap-store-in-linux-mint-20. I can’t understand how it could be simpler.
-
Is it harder to enable it in Mint than it is to disable it in Ubuntu? Not at all. Is how to enable it better documented in Mint than how to disable it in Ubuntu? Absolutely: https://linuxmint-user-guide.readthedocs.io/en/latest/snap.html.
-
We don’t do politics, and we certainly don’t do religion. You’re bringing these here by using terms such as “politicians” or “evil”.
Does "evil" refer to religion? Or perhaps they meant "evil" in a more general way, as a more extreme version of "bad".
-
-
github.com github.com
-
The code is far simpler and easier to understand/verify
-
-
ubuntu.com ubuntu.com
-
Ubuntu also supports ‘snap’ packages which are more suited for third-party applications and tools which evolve at their own speed, independently of Ubuntu. If you want to install a high-profile app like Skype or a toolchain like the latest version of Golang, you probably want the snap because it will give you fresher versions and more control of the specific major versions you want to track.
-
-
-
This is open-source. You can always fork and maintain that fork yourself if you feel that's warranted. That's how this project started in the first place, so I know the feeling.
-
-
css-tricks.com css-tricks.com
-
Bordering an element with a single repeating image is something that seems like it should be easy with a property called border-image, but the process for actually doing that is somewhat counter-intuitive. Let’s say, for example, that you want to border an element with a repeating heart icon. You can’t do that with a image of a single heart. Instead, you have to make an image of a “frame” of hearts arranged as you’d like them to appear in the border, then slice that image. <img sizes="(min-width: 735px) 864px, 96vw" src='https://i2.wp.com/css-tricks.com/wp-content/uploads/2013/01/enlarged-border-image-slice.png' alt='' data-recalc-dims="1" />Eight hearts in a “frame” image, enlarged to show detail. The red lines indicate slices. If you think that sounds preposterous, you’re in good company. There was a lengthy discussion of the subject on Eric Myer’s blog a few years ago where many frontend development greats weighed in.
-
-
draveness.me draveness.me
-
a book on Golang
-
-
developer.mozilla.org developer.mozilla.org
-
CSS Grid Layout excels at dividing a page into major regions or defining the relationship in terms of size, position, and layer, between parts of a control built from HTML primitives.
-
-
css-tricks.com css-tricks.com
-
Making literal grids. Like X columns with Y gap between them homegrown framework stuff. grid-gap is wonderful, as gutters are the main pain point of grid systems.
-
-
askubuntu.com askubuntu.com
-
I'm very (VERY!) tempted to use that ppa, but without offense to it's maintainers... it's just some random ppa. If it had more "traction" I'd use it. Right now it has only 3 maintainers.
-
-
forums.theregister.com forums.theregister.com
-
Besides running contrary to the principles that lead a lot of people to Linux systems (a closed store that you can't alter...automatic updates you have no control over....run by just the one company)
-
If upstream code presumes things will work that dont in snap (e.g. accesses /tmp or /etc) the snap maintainer has to rewrite that code and maintain a fork. Pointless work. Packaging for .deb is a no-brainer.
-
Its not too complicated but it is an annoyance. I want /etc/hosts, /etc/resolv.conf, /etc/nsswitch.conf, /etc/rc.local and all the standard stuff to work. The heavy lifting is done in the kernel. All they need to do is leave it alone. Its getting harder to make Ubuntu behave like Linux.
-
if it's not broken, fix it until it is.
Tags
- core principles
- Linux: reasons people use/choose it
- leave it alone
- packaging software
- annoying
- snap: bad
- standard
- app stores: bad
- first sighting
- systemd: bad
- if it's not broken, fix it until it is
- funny
- could be easier / more difficult than it needs to be
- want it to just work
- core values
Annotators
URL
-
-
-
If components gain the slot attribute, then it would be possible to implement the proposed behavior of <svelte:fragment /> by creating a component that has a default slot with out any wrappers. However, I think it's still a good idea to add <svelte:fragment /> so everyone who encounters this common use case doesn't have to come up with their own slightly different solutions.
-
-
-
The CardLayout creates a store in context and the Card creates a standardized div container and registers it to the store so that the CardLayout has access to that DOM element. Then in afterUpdate you can move the DOM elements into columns and Svelte will not try to put them back where they go. It's a bit messy but it works.
-
-
knowledge.wharton.upenn.edu knowledge.wharton.upenn.edu
-
Day. G., Shea. G., (2020). COVID-19: 3 ways businesses can find growth opportunities during the crisis. World Economic Forum. Retrieved from https://www.weforum.org/agenda/2020/06/innovation-rethink-wharton-covid19-coronavirus
-
-
-
I would love to see this features as well, since it makes component composition and reuse a lot easier.
-
-
github.com github.com
-
You should default to the most permissive option imo and there really is no reason to check anything until you really need to If it were left to me I'd just use optional chaining, as it also eliminates the need for no-ops
(lazy checking)
-
-
stackoverflow.com stackoverflow.com
-
new Cmp will render to the DOM synchronously, so you don't have to worry about the content flickering because the component is rendered too late.
-
-
atomiks.github.io atomiks.github.io
-
"Headless Tippy" refers to Tippy without any of the default element rendering or CSS. This allows you to create your own element from scratch and use Tippy for its logic only.
-
It's a generic abstraction for the logic and styling of elements that pop out from the flow of the document and float next to a reference element, overlaid on top of the UI.
-
-
popper.js.org popper.js.orgTippy.js1
-
Popper has a sole goal: position elements. That's why we call it a "positioning engine" and not a "tooltip library".
-
-
www.thefxck.com www.thefxck.com
-
a story for production Positioning?
-
-
www.npmjs.com www.npmjs.com
-
Think first: why do you want to use it in the browser? Remember, servers must never trust browsers. You can't sanitize HTML for saving on the server anywhere else but on the server.
-
-
-
eth
Tags
Annotators
URL
-
-
discourse.ubuntu.com discourse.ubuntu.com
-
I don’t find the software slow, I find the startup time for snap packages when the start for the first time on a session slow, but that has been improved, and it’s public that the snapcraft team has been working hard to improve that.
-
What’s the use of ie. snap libreoffice if it can’t access documents on a samba server in my workplace ? Should I really re-organize years of storage and work in my office for being able to use snap ? A too high price to pay, for the moment.
-
I’m not a dev either, so no Ubuntu fork, but I will perhaps be forced to look at Debian testing, without some advantages of Ubuntu - but now that Unity is gone (and I deeply regret it), gap would not be so huge anymore…
-
If folks want to get together and create a snap-free remix, you are welcome to do so. Ubuntu thrives on such contribution and leadership by community members. Do be aware that you will be retreading territory that Ubuntu developers trod in 2010-14, and that you will encounter some of the same issues that led them to embrace snap-based solutions. Perhaps your solutions will be different. .debs are not perfect, snaps are not perfect. Each have advantages and disadvantages. Ubuntu tries to use the strengths of both.
Tags
- working on it (improving)
- constant evolution/improvement of software/practices/solutions
- advantages/merits/pros
- Snap
- non-devs have more limited options
- disadvantages/drawbacks/cons
- better for some but worse for others
- users just want to get work done
- moving/changing in a different direction than users want
- forking: you can always fork it if you want
- software performance
- high-cost changes
- not worth it
Annotators
URL
-
-
www.michaelseibel.com www.michaelseibel.com
-
via david
-
-
www.ruanyifeng.com www.ruanyifeng.com
-
startupclass.samaltman.com startupclass.samaltman.com
-
startup class
-
-
css-tricks.com css-tricks.com
-
If there’s a lot more to aligning icons to text than you expected, then you are not alone.
-
- Dec 2020
-
zhuanlan.zhihu.com zhuanlan.zhihu.com
-
kubevela, ali, kalm
-
-
github.com github.com
-
Dropped FFmpeg support (focus on primary functions instead)
Tags
Annotators
URL
-
-
github.com github.com
-
Jbuilder gives you a simple DSL for declaring JSON structures that beats manipulating giant hash structures. This is particularly helpful when the generation process is fraught with conditionals and loops.
-
-
github.com github.com
-
The only solution that I can see is to ensure that each user gets their own set of stores for each server-rendered page. We can achieve this with the context API, and expose the stores like so: <script> import { stores } from '@sapper/app'; const { page, preloading, session } = stores(); </script> Calling stores() outside component initialisation would be an error.
Good solution.
-
-
github.com github.com
-
I tried leaking session and page data and indeed it's easy. Too easy. So I definitely agree that session data should not be readable from anywhere but the request itself.
-
-
-
This would be cumbersome, and would encourage developers to populate stores from inside components, which makes accidental data leakage significantly more likely.
-
which makes it much harder to accidentally keep logged-in state visible after a client-side logout
-
-
github.com github.com
-
it focuses on compiling non-standard language extensions: JSX, TypeScript, and Flow. Because of this smaller scope, Sucrase can get away with an architecture that is much more performant but less extensible
-
-
wizardforcel.gitbooks.io wizardforcel.gitbooks.io
-
思路不错
-
-
www.indiehackers.com www.indiehackers.com
-
todoist.com todoist.com
-
You’re in good companyTrusted by leaders at some of the world’s most inspired organizations
How can they disclose this? Is it based on email address? Do they have permission?
-
-
www.npmjs.com www.npmjs.com
-
You can afford to make a proper PR to upstream.
-
No more waiting around for pull requests to be merged and published. No more forking repos just to fix that one tiny thing preventing your app from working.
This could be both good and bad.
potential downside: If people only fix things locally, then they may be less inclined/likely to actually/also submit a merge request, and therefore it may be less likely that this actually (ever) gets fixed upstream. Which is kind of ironic, considering the stated goal "No more waiting around for pull requests to be merged and published." But if this obviates the need to create a pull request (does it), then this could backfire / work against that goal.
Requiring someone to fork a repo and push up a fix commit -- although a little extra work compared to just fixing locally -- is actually a good thing overall, for the community/ecosystem.
Ah, good, I see they touched on some of these points in the sections:
- Benefits of patching over forking
- When to fork instead
Tags
- forking to add a desired missing feature/change
- limited time: not right now (maybe later)
- making it easy to do the wrong thing
- pull request stalled
- maintaining a fork while waiting for upstream to merge
- proper
- irony
- when to _
- doing it right/properly
- pull request
- taking the time to do it right/properly
- forking (patching vs. forking)
Annotators
URL
-
-
github.com github.com
-
Can this be merged please, this fixes a problem I have
-
-
github.com github.com
-
Unless we choose to use the semver ju-jitsu of calling the changes a bugfix
-
-
github.com github.com
-
May I ask what is holding this back?
-
-
github.com github.com
-
locked and limited conversation to collaborators
Why do they punish the rest of us (can't even add a thumb up reaction) just because someone was "talking too much" or something on this issue?
-
-
moderncto.io moderncto.io
-
doorDash CTO
Tags
Annotators
URL
-
-
zapier.com zapier.com
-
Why Zapier has always been 100% remote
Tags
Annotators
URL
-
-
samczsun.com samczsun.com
-
price oracle
-
-
consensys.net consensys.net
-
intro of PoS
-
-
-
intro of ETH2
-
-
number-none.com number-none.com
-
coding style
John Carmack on coding style
-
-
www.youtube.com www.youtube.com
-
seems interesting
-
-
www.youtube.com www.youtube.com
-
API Machinery SIG
-
-
github.com github.com
-
nice talks, especially from Daniel Smith
Tags
Annotators
URL
-
- Nov 2020
-
news.ycombinator.com news.ycombinator.com
-
make money?
-
-
www.scylladb.com www.scylladb.com
-
news.ycombinator.com news.ycombinator.com
-
There's a huge area of seemingly obvious user-centric products that don't exist simply because there isn't a working business model to support it.
-
-
github.com github.com
-
maybe a good reading material on k8s
-
-
stackoverflow.com stackoverflow.com
-
If you want a reference to the global object that works in any context, you can read this from a directly-called function. const global = (function() {return this})();. This evaluates to window in the browser, self in a service worker and global in nodejs.
-
-
stackoverflow.com stackoverflow.com
-
If the client JS is disabled, then handleSubmit will never be executed and you have to care that your /api/fakeBackendRoute will handle the data exactly how the client would.
-
-
www.reddit.com www.reddit.com
-
Svelte by itself is great, but doing a complete PWA (with service workers, etc) that runs and scales on multiple devices with high quality app-like UI controls quickly gets complex. Flutter just provides much better tooling for that out of the box IMO. You are not molding a website into an app, you are just building an app. If I was building a relatively simple web app that is only meant to run on the web, then I might still prefer Svelte in some cases.
-
Unfortunately it is not just the semantic that is broken. There are lot of things.For example if you look at some of the examples (https://flutter.github.io/samples/#/) - you can see that indeed there are some div and p tags but it is not entirely normal DOM elements. For example you can't even select text anywhere on the screen. And there are more and more little things like that.Just to be clear - Flutter for web is great, I'm happy it exists, but it is not comparable to React/Vue or Svelte.IMO Flutter for web is good to post live examples of Flutter code or maybe some last-minute-boss-request to make a web version of existing app, but for not for full-blown web app. :)
-
-
github.com github.com
-
All projects here are completely frozen, though feel free to fork and continue using them on your own.
-
-
github.com github.com
-
读了一遍收获不大,读懂的内容读之前已经懂的,不懂的看了还是不大懂,等日后再来吧
-
-
blog.hubspot.com blog.hubspot.com
-
One last bonus: CSS variables can be written in a way that makes it easier for human programmers to understand. If you just see hex code #93e9be, you won’t know what color it produces, while --brand-green makes clear the purpose of the variable.
-
-
developer.mozilla.org developer.mozilla.org
-
Fallback values aren't used to fix the browser compatibility. If the browser doesn't support CSS custom Properties, the fallback value won't help.
-
An additional benefit is semantic identifiers. For example, --main-text-color is easier to understand than #00ff00, especially if this same color is also used in other contexts.
-
-
uxdesign.cc uxdesign.cc
-
That’s how developers create buttons — they add padding to their div containers, not heights.
-
-
github.com github.com
-
passive: true instructs chrome that no body will call e.preventDefault() so chrome can optimized scrolling just because no body will call e.preventDefault and so there is no need to wait listeners...
-
-
github.com github.com
-
@monkeythedev can your work be used already? I would suggest not yet, i'm still doing core changes every day
-
-
www.metabase.com www.metabase.comMetabase1
-
seems interesting
-
-
www.quora.com www.quora.com
-
What was it like to be a software engineer at NeXT?
What was it like to be a software engineer at NeXT?
-
-
geoexamples.com geoexamples.com
-
After some attempts mapping with Svelte, I missed using canvas instead of SVG
-
-
timdeschryver.dev timdeschryver.dev
-
In the past, I tried to create some proof of concepts with svelte, but I usually ended up missing some of the features that RxJS provides. Now that I know that they complement each other well, I will grab this combination more often
-
Svelte makes the pit of success larger because it hides all of this from us at compile time.
-
At the start this is hard to get right, and bad practices will sneak into the codebase.
-
-
opinionatedgamers.com opinionatedgamers.com
-
I find the binding of Mini Express pleasant.
-
-
opinionatedgamers.com opinionatedgamers.com
-
What vaults this well past SNCF for me (setup time aside), is the limited company choice; it prevents a feedback loop of sorts where a game devolves into running each company in the ground.
-
-
www.snowpack.dev www.snowpack.devSnowpack1
-
Who’s Using Snowpack?
-
-
-
So handling the interop upfront will avoid users writing invalid ES6 and make sure that they write ES6 that loads CommonJS in the right way.
-
-
www.youtube.com www.youtube.com
-
If everyone did this, the repair shops would be out of business.
-
-
blog.joinmastodon.org blog.joinmastodon.org
-
While there have always been server listings on joinmastodon.org, this is a break from our previous practice of listing servers. Before the Server Covenant we pulled a list of servers from a 3rd party provider called instances.social. However, instances.social was a 3rd party and automated service. The one thing that it could not do was any kind of quality control as it simply listed every instance submitted–regardless of stability or their code of conduct. As Mastodon has grown it has become increasingly clear that simply listing every possible server was not in our interest as a project, nor was it in the interest in the majority of the communities running Mastodon.
To some level as an IndieWeb participant I'm doing this more manually by reading and individually adding people and their sites to my personal network one at a time. No one has yet moderated this process and to some extent it's sort of nice to have a more natural discovery process for protecting my own personal network.
-
-
www.styled-components.com www.styled-components.com
-
www.youtube.com www.youtube.com
-
Life of a Kubernetes API Request by Daniel Smith, Google
-
-
www.youtube.com www.youtube.com
-
Kubernetes Design Principles: Understand the Why
-
-
gist.github.com gist.github.com
-
There was a major refactoring in the resolver (https://github.com/webpack/enhanced-resolve). This means the resolving option were changed too. Mostly simplification and changes that make it more unlikely to configure it incorrectly.
Linked from: https://stackoverflow.com/a/36574982/47185
-
-
medium.com medium.com
-
Bringing this back to filtering, not only am I saving time and preserving focus by batch processing both the collection and the consumption of new content, I’m time-shifting the curation process to a time better suited for reading, and (most critically) removed from the temptations, stresses, and biopsychosocial hooks that first lured me in.I am always amazed by what happens: no matter how stringent I was in the original collecting, no matter how certain I was that this thing was worthwhile, I regularly eliminate 1/3 of my list before reading. The post that looked SO INTERESTING when compared to that one task I’d been procrastinating on, in retrospect isn’t even something I care about.What I’m essentially doing is creating a buffer. Instead of pushing a new piece of info through from intake to processing to consumption without any scrutiny, I’m creating a pool of options drawn from a longer time period, which allows me to make decisions from a higher perspective, where those decisions are much better aligned with what truly matters to me.
Using read-it later apps helps you separate collection from filtering.
By time-shifting the filtering process to a time better suited for reading, and removed from temptations, you will want to drop 2/3 of the content you save.
This allows you to "make decisions from a higher perspective"
-
-
stackoverflow.com stackoverflow.com
-
This is the real issue here, and it's a bug with chrome devtools, fixed in Chrome 46.
-
-
github.com github.com
-
If this PR merges and it has unforseen bugs / issues, I'm not sure anyone would have the time to jump in and fix it. So, that's why I'm being cautious about approving/merging it.
-
-
stackoverflow.com stackoverflow.com
-
And the App will be responsible for display a list of users adding/removing users of said list
-
-
github.com github.com
-
Tell you why tree-shaking fails, if it does.
-
What it doesn't do
Tags
Annotators
URL
-
-
-
Do you want to know how much it costs to make an app? Learn the cost to develop iOS & Android apps in 2020 and about the main influencing factors and indicators.
-
-
github.com github.com
-
I see this issue has 2 open PR's is this going to be finalized anytime soon?
-
-
github.com github.com
-
I guess I was just waiting for some interest from a maintainer, since there's not much point in wasting my time on developing this if the maintainers aren't even interested in this feature.
-
-
-
github.com github.com
-
Furthermore, how come there's a PR open since 3 months, at what seems to be the authoritative repo for Svelte?
-
-
github.com github.com
-
github.com github.com
-
There are a few intentional behavioral differences between Dart Sass and Ruby Sass. These are generally places where Ruby Sass has an undesired behavior, and it's substantially easier to implement the correct behavior than it would be to implement compatible behavior. These should all have tracking bugs against Ruby Sass to update the reference behavior.
-
Sass makes CSS fun again.
Tags
- reversible decisions
- get back on course
- don't let previous decisions/work constrain you
- intentionally doing it differently / _not_ emulating/copying the way someone else did it
- reverting a previous decision/change/commit
- fun
- makes it fun again
- Sass
- reference implementation
- intentional/well-considered decisions
- intentional
- learn from your mistakes
Annotators
URL
-
-
css-tricks.com css-tricks.com
-
When you use a function like color(). it’s impossible to know exactly where it was defined. Which @import does it come from?
-
-
github.com github.com
-
// replace css-loader with typings-for-css-modules-loader environment.loaders.get('moduleSass').use = environment.loaders.get('moduleSass').use.map((u) => { if(u.loader == 'css-loader') { return { ...u, loader: 'typings-for-css-modules-loader' }; } else { return u; } });
-
-
github.com github.com
-
Maybe it's also a bug because every warning should be ignorable? Not sure.
-
-
github.com github.com
-
Obviously we shouldn't rush into anything. But changes like these are best made earlier on in a project's lifecycle, so I'm eager to hear what people think so that we can start making some progress.
-
-
medium.com medium.com
-
flash loan & hack
-
-
forum.makerdao.com forum.makerdao.com
-
flash loan & makerdao
-
-
-
In principle, this information is already available through other means, but it is actually a fair amount of work to gather it in this form, and I think it could be useful to open it up to programmatic consumption.
-
-
arxiv.org arxiv.org
-
-
measure system call
-
- Oct 2020
-
www.getcloudapp.com www.getcloudapp.com
-
Over 4 million people trust CloudApp
-
-
meta.stackoverflow.com meta.stackoverflow.com
-
Looking at all those bearing, heading, orientation, navigation, position, direction, etc. I think we have a bigger problem here. Someone has decided how to use tag (e.g. orientation is about page orientation), but there are 100 other cases. Imho, to disallow misusing there should be no "heading", but rather "html-heading", "gps-heading", "whatelse-heading", which make mistakes impossible. So yes, "heading" should go.
-
-
rekt.ghost.io rekt.ghost.io
-
flash loans
Tags
Annotators
URL
-
-
stackoverflow.com stackoverflow.com
-
If you have a better/simpler/"more official" solution, I'd still love to see it!
The "official" solution is to use submitErrors (see Erik's answer).
-
-
github.com github.com
-
I'd be happy to take on this issue, if no one else has up to this point!
-
-
www.basefactor.com www.basefactor.com
-
Focus on your application: forget about forms details like I'm dirty, field touched...
-
You can try to build a solution to tackle these issues on your own, but it will cost you time and money... why not use a battle-tested solution to handle all this complexity?
-
If you want to implement a form with a superb User Experience, you have to take care of many variables:
-
Form validation can get complex (synchronous validations, asynchronous validations, record validations, field validations, internationalization, schemas definitions...). To cope with these challenges we will leverage this into Fonk and Fonk Final Form adaptor for a React Final Form seamless integration.
-
Managing Form State (holding field information, check if a control has been touched, if the user has clicked the submit button, who owns the current focus...) can be tedious and prone to errors. We can get help from React Final Form to handle these challenges for us.
Tags
- easy to get wrong
- form design
- too hard/difficult/much work to expect end-developers to write from scratch (need library to do it for them)
- adapter
- difficult/hard problem
- a lot of things to consider
- reinventing the wheel / not invented here
- can't keep entire system in your mind at once (software development) (scope too large)
- complexity
- don't write your own
- user experience
- react-final-form
- tedious
- form validation library
- fonk (form validation library)
- integration
- form validation
Annotators
URL
-
-
www.youtube.com www.youtube.com
-
Unfortunately, it is an expression mired with a negative context because of how Rumsfeld used it to lie.
-
-
-
But it sounds like the library could use some way to setTouched()
-
you took 4 hours to respond, so I implemented it myself
Tags
- too easy/simple/trivial for end-developers to write from scratch to expect (don't need library to do it for them; don't need to provide feature)
- whether maintainer or contributor should/will implement something
- contributing: willing to attempt/try to implement it
- should I build/implement/create this myself?
- software development: solving problem that affects yourself
- exports (functions/etc. exposed to outside world) (modules)
Annotators
URL
-
-
dodoex.github.io dodoex.github.io
-
math is simple
Tags
Annotators
URL
-
-
github.com github.com
-
If that one somehow ends up being deemed an intended behavior rather than a bug, then it should definitely get explained in the docs too.
Tags
Annotators
URL
-
-
github.com github.com
-
I'm not sure yet how much of this is a bug.
Tags
Annotators
URL
-
-
-
I'm afraid there's only so much the docs & tutorials can do about something like this actually. When you first read them, you don't get Svelte well enough (since you're reading a tutorial...) for this to make sense to you. Then you try something, encounter a behaviour, question it, understand better... That's learning.
-
-
github.com github.com
-
This isn't a bug. Svelte's reactivity is triggered by assignment, so it won't re-render on mutations like array pushing.
-
-
about.gitlab.com about.gitlab.com
-
gitlab Tech stack
-
-
-
Especially when rollup is configured with multiple outputs, I find this particular onwarn to be helpful in reducing warning clutter. It just displays each circular reference once and doesn't repeat the warning for each output:
-
I think my personal preference would be to see them all at once. Or maybe limit it to up to 10 messages and then list the count of how many more messages were not displayed. Pick your reaction
-
Another thing we could do to limit output would be to only every show the first circular dependency warning. I think we already do this for other types of warnings. Then you would need to tackle the warnings one-by-one, though.
-
-
medium.com medium.com
-
Modules from the following layer can require anything from all the previous layers, but not vice versa.
-
-
-
Note that these are not hyperlinks; these URIs are used for identification. This is a machine-readable way to say “this is HTML”. In particular, software does not usually need to fetch these resources, and certainly does not need to fetch the same one over and over!
-
You might think something like “don’t request the same resource thousands of times a day, especially when it explicitly tells you it should be considered fresh for 90 days” would be obvious, but unfortunately it seems not.
-
Any software that makes HTTP requests to other sites should make it straightforward to enable the use of a cache.
-
-
www.youtube.com www.youtube.com
-
multi-tenancy
-
-
www.qikqiak.com www.qikqiak.com
-
via david
可能是不错的中文文档
-