If you ask my former students, they will tell you that as a teacher, my goal is to do nothing. I dream of the day when I can sit at my desk, feet propped up, reading a book, while the classroom bursts with activity and learning around me.
- Feb 2021
-
www.huffpost.com www.huffpost.com
-
-
-
-
In the short term you may have the stamina to get up earlier, stay later, and out-work the demands you face. But the inverse equation of shrinking resources and increasing demands will eventually catch up to you, and at that point how you involve others sets the ceiling of your leadership impact.
-
-
trailblazer.to trailblazer.to
-
The legendary cfp-app will become a Rails-to-TRB refactoring tutorial.
-
And yes, at TRB GmbH, we do pay people to work on OSS
-
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.
-
It’s so simple that I sometimes wonder why it took years to develop it!
Tags
- refactoring
- learn from your mistakes
- getting paid to work on open-source software
- fix design/API mistakes as early as you can (since it will be more difficult to correct it and make a breaking change later)
- switching/migrating to something different
- very simple/small result/change in the end but took a lot of work/time to arrive there
- do it right/well the first time because it may be too hard to clean up/fix later if you don't
- if it's incorrect; fix it
- example/demo app
- Rails app
- better late than never
- Trailblazer
- job: benefits
- pointing out gaps/downsides/cons in competition/alternatives
- rails
Annotators
URL
-
-
2019.trailblazer.to 2019.trailblazer.to
-
note that TRB source code modifications are not proprietary
In other words, you can build on this software in your proprietary software but can't change the Trailblazer source unless you're willing to contribute it back.
loophole: I wonder if this will actually just push people to move their code -- which at the core is/would be a direction modification to the source code - out to a separate module. That's so easy to do with Ruby, so this restriction hardly seems like it would have any effect on encouraging contributions.
Tags
- loophole/escape hatch
- well-written
- wording designed to be more palatable/pleasing/inoffensive
- annotation meta: may need new tag
- reminder
- good point
- neutral/dispassionate/impartial/objective wording
- software licensing
- open-source software: not contributing new code back to project
- LGPL
- proprietary software
Annotators
URL
-
-
github.com github.com
-
The bare bones operation without any Trailblazery is implemented in the trailblazer-operation gem and can be used without our stack.
-
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.
-
Only use what you like.
-
you can pick which layers you want. Trailblazer doesn't impose technical implementations
Tags
- abstractions
- 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)
- making changes / switching/migrating gradually/incrementally/step-wise/iteratively
- rails: the Rails way
- newer/better ways of doing things
- 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)
- trailblazer-operation
- Trailblazer
- focus on concepts/design/structure instead of specific/concrete technology/implementation
- leaving the details of implementation/integration up to you
Annotators
URL
-
-
github.com github.com
-
ActiveModel provides a powerful framework for defining callbacks. ActiveInteraction hooks into that framework to allow hooking into various parts of an interaction's lifecycle.
-
It requires an account to update, but the other inputs are optional. If they're missing, it'll ignore those attributes. If they're present, it'll update them.
-
If ActiveModel deals with your nouns, then ActiveInteraction handles your verbs.
It's a good analogy, but I think it's misleading/confusing/unclear/incorrect, because parts of ActiveInteraction are ActiveModel, so I guess ActiveInteraction deals with your nouns too?
-
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
- leverage library/tool to do something for you
- ActiveModel
- good analogy
- misleading
- 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
- _ is to _ (analogy)
- elegant solution
- confusing
- see content below
- unclear
- makes sense to me
Annotators
URL
-
-
psyarxiv.com psyarxiv.com
-
Sun, R., Rieble, C., Liu, Y., & Sauter, D. (2020). Connected Despite COVID-19: The Role of Social Interactions and Social Media for Wellbeing. PsyArXiv. https://doi.org/10.31234/osf.io/x5k8u
-
-
stackoverflow.com stackoverflow.com
-
# catch multi-char special key sequences read -sN1 -t 0.0001 k1 read -sN1 -t 0.0001 k2 read -sN1 -t 0.0001 k3 key+=${k1}${k2}${k3}
-
-
linusakesson.net linusakesson.net
-
Beware, though: What you are about to see is not particularly elegant. In fact, the TTY subsystem — while quite functional from a user's point of view — is a twisty little mess of special cases. To understand how this came to be, we have to go back in time.
-
-
stackoverflow.com stackoverflow.com
-
However, banning him opens a very dangerous precedent, making the US more like a dictatorship... more like China. Also it's not effective. Those who were silenced will only have more motivation, and the risk of terrorism is greatly increased. The people must decide what is true. Not big companies. Individuals must be able to express their beliefs. Bot accounts must be banned, but real individuals must not. If you think a group of people is a bunch of idiots who believe fake news, then, tough, that's democracy for you. Maybe it means that your government is not investing enough in education and welfare to properly educate and give hope to those people.
-
I oppose the banning of Donald Trump and his non-violent believers/content from social media platforms such as Facebook Twitter, YouTube and Amazon. I feel (irrationally?) Trump is arrogant and disgusting as a person. I like some of his anti-CCP policies, but not sure I'd vote for him. The "USA First" stance is particularly damaging as it scares USA allies away. I don't think there's enough evidence for the electoral fraud allegations, but I haven't researched the court cases extensively. However, banning him opens a very dangerous precedent, making the US more like a dictatorship... more like China. Also it's not effective. Those who were silenced will only have more motivation, and the risk of terrorism is greatly increased. The people must decide what is true. Not big companies. Individuals must be able to express their beliefs. Bot accounts must be banned, but real individuals must not. If you think a group of people is a bunch of idiots who believe fake news, then, tough, that's democracy for you. Maybe it means that your government is not investing enough in education and welfare to properly educate and give hope to those people. I'm against violence.
-
-
www.cnbc.com www.cnbc.com
-
AWS can even terminate or suspend its agreement with a customer immediately under certain circumstances as it did in 2010 with Wikileaks, pointing to violations of AWS’ terms of service.
-
The swiftness with which Amazon acted shouldn’t come as a shock. Companies have been disclosing details about their deals with Amazon that warn of these kinds of sudden discontinuations for years.
-
The incident demonstrates a type of power that Amazon wields almost uniquely because so many companies rely on it to deliver computing and data storage.
-
-
www.metacritic.com www.metacritic.com
-
i dont know why everyone wants to **** on everything that is not a "AAA" game, its not in its perfect state, but far from deserve a 3, i will give it a 9 so it counters the "just hate
-
-
every.to every.to
-
Personal todo lists don’t depend on others using the same system (no network effects)
They don't unless you're building a wiki or commonplace book that can interact with those of others. (Roam research isn't doing this---yet, but they should.) Ideally small building block pieces will allow it to dovetail with other systems that could potentially do the same thing.
-
-
-
{a: 1, b: 2, c: 3, d: 4} => {a:, b:, **rest} # a == 1, b == 2, rest == {:c=>3, :d=>4}
equivalent in javascript:
{a, b, ...rest} = {a: 1, b: 2, c: 3, d: 4}
Not a bad replacement for that! I still find javascript's syntax a little more easily readable and natural, but given that we can't use the same syntax (probably because it would be incompatible with existing syntax rules that we can't break for compatibility reasons, unfortunately), this is a pretty good compromise/solution that they've come up with.
-
-
github.com github.com
-
Nevermind, I use now reform-rails
-
@adisos if reform-rails will not match, I suggest to use: https://github.com/orgsync/active_interaction I've switched to it after reform-rails as it was not fully detached from the activerecord, code is a bit hacky and complex to modify, and in overall reform not so flexible as active_interaction. It has multiple params as well: https://github.com/orgsync/active_interaction/blob/master/spec/active_interaction/modules/input_processor_spec.rb#L41
I'm not sure what he meant by:
fully detached from the activerecord I didn't think it was tied to ActiveRecord.
But I definitely agree with:
code is a bit hacky and complex to modify
Tags
- I agree
- recommended option/alternative
- switching/migrating to something different
- evaluating software options
- missed opportunity
- flexibility
- too coupled/dependent
- hard to understand
- too complicated
- recommended software
- pointing out gaps/downsides/cons in competition/alternatives
- reform (Ruby)
- active_interaction
Annotators
URL
-
-
github.com github.com
-
Any idea @AaronLasseigne if this is mergeable?
-
This is a breaking change so it'll have to go into a major release. I was working on a v4 release but it's too much. I think I'm going to pair it back and we can add this to the new v4. When I have that ready, I'll rebase the merge onto that branch.
Tags
- waiting for maintainers to review / merge pull request / give feedback
- releases: how much to include in a release / when to defer a change until next release
- breaking change
- don't let big plans/goals get in the way of integrating/releasing smaller changes/improvements
- why has this not been merged yet?
Annotators
URL
-
-
github.com github.com
-
No one has requested it before so it's certainly not something we're planning to add.
-
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.
-
Thanks, I'll continue leaning on the array workaround for my use case then.
-
-
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?
-
The main realization came when I figured out that the main_model was just another association. This means we can move a lot of logic to just that class and reason about it a lot better.
Tags
- understand both sides of an issue
- realization
- investing time to really understand something
- doing something without knowing why/how it works
- fallacy: doing something because it's popular / everyone is doing it
- rationale
- justification for existence
- easy to reason about
- special cases
- understand the ramifications/effects/consequences
- understand the trade-offs
- it's just _
- solving/handling the general case
- why?
Annotators
URL
-
-
railscasts.com railscasts.com
-
So how are we going to create a model that doesn’t have a database table behind it? There are several potential solutions including various plugins but we’re going to use the method described in an entry on the Code Tunes blog. This shows a techinque that involves overriding a couple of methods in an ActiveRecord model and then manually defining the columns in the model file rather than in the database table. In our Recommendation model we’ll add in the two overridden methods and then use the column class method to define the columns in a similar way to how they’re defined in a migration file.
Does this still work in Rails 6? I wonder.
-
-
github.com github.com
-
Examples of different ways of defining forms
Wow, that's a lot of different ways.
The inline_form way in particular seems interesting to me, though it's worth noting that that method is just an example, not actually part of this project's code, so it's not really a first-class option like the other options.
-
Bureaucrat doesn't define save
It's probably just as well, since it will almost always need to be overridden with custom logic...
-
-
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.
-
-
en.wikipedia.org en.wikipedia.org
-
For the usage in society, see Second-class citizen.
Ironic that this reference is ostensibly about the usage of "first-class citizen" in society, yet it links to a seemingly-mismatched (by name only, that is) article, entitled "second-class citizen".
Ironic that the first-class (unqualified) article is about the figurative meaning of "citizen" used in computer science, and that the page describing first-class and second-class status of the more literal citizens in society is relegated to what I kind of think is a second-class position in the encyclopedia (because it takes the #2 position numerically, even though it is (at least as is implied in this reference) also about first-class citizens (though the word "first-class" does not appear a single time in that article, so maybe this reference is the one that is more ironic/incorrect).
-
-
github.com github.com
-
Set your models free from the accepts_nested_attributes_for helper. Action Form provides an object-oriented approach to represent your forms by building a form object, rather than relying on Active Record internals for doing this.
It seems that the primary/only goal/purpose was to provide a better alternative to ActiveRecord's accepts_nested_attributes_for.
Unfortunately, this appears to be abandoned.
-
-
github.com github.com
-
Take 3, Previously attempted in 2012 (#8189) and 2015 (#19709). This new version uses ActiveModel Attributes API.
-
-
github.com github.com
-
We are still open to the idea but the implementation should leverage the attributes API introduced in Rails 5.2 in Active Model.
-
Fork rails, add github.com/georgebrock/rails as a remote, merge this branch into rails/4.0.2 (the tag), and then use your fork of Rails: gem 'rails', github: 'yourusername/rails'
-
If you take it to it's logical conclusion you'd only accept the correct types for boolean, integer, decimal, etc. columns, which is obviously crazy.
-
-
ifenglishthenlogic.blogspot.com ifenglishthenlogic.blogspot.com
-
More often than not, the expression ‘taken to its logical conclusion’ serves to point up the absurdity of a piece of reasoning we come across.
-
I need a holiday to get over a holiday
-
I wish there were no Mondays
-
The golden standard I suppose is set by the rhyme: There is a hole in my bucket, dear Liza, dear Liza. Of course, fixing it requires the use of the bucket at some stage, and so the loop closes.
-
-
en.wikipedia.org en.wikipedia.org
-
In object-oriented programming, information hiding (by way of nesting of types) reduces software development risk by shifting the code's dependency on an uncertain implementation (design decision) onto a well-defined interface. Clients of the interface perform operations purely through it so if the implementation changes, the clients do not have to change.
-
-
www.infoworld.com www.infoworld.com
-
-
This article explains why you shouldn't use getters and setters (and when you can use them) and suggests a design methodology that will help you break out of the getter/setter mentality.
-
-
www.javaworld.com www.javaworld.com
-
Programming to interfaces is at the core of flexible structure.
-
-
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.
-
My understanding of "programming to an interface" is different than what the question or the other answers suggest. Which is not to say that my understanding is correct, or that the things in the other answers aren't good ideas, just that they're not what I think of when I hear that term.
-
Programming to an interface means that when you are presented with some programming interface (be it a class library, a set of functions, a network protocol or anything else) that you keep to using only things guaranteed by the interface. You may have knowledge about the underlying implementation (you may have written it), but you should not ever use that knowledge.
-
The problem with this is that it creates a strong coupling between your code and the implementation, exactly what the interface was supposed to prevent.
-
If the program was important enough, Microsoft might actually go ahead and add some hack to their implementation so the the program would continue to work, but the cost of that is increased complexity (with all the ensuing problems) of the Windows code. It also makes life extra-hard for the Wine people, because they try to implement the WinAPI as well, but they can only refer to the documentation for how to do this, which leads to many programs not working as they should because they (accidentally or intentionally) rely on some implementation detail.
-
Abstract myself from the how it does and get focus on what to do.
-
Say you have software to keep track of your grocery list. In the 80's, this software would work against a command line and some flat files on floppy disk. Then you got a UI. Then you maybe put the list in the database. Later on it maybe moved to the cloud or mobile phones or facebook integration. If you designed your code specifically around the implementation (floppy disks and command lines) you would be ill-prepared for changes. If you designed your code around the interface (manipulating a grocery list) then the implementation is free to change.
-
It's more like providing an Employee object rather than the set of linked tables you use to store an Employee record. Or providing an interface to iterate through songs, and not caring if those songs are shuffled, or on a CD, or streaming from the internet. They're just a sequence of songs.
Tags
- interfaces (programming)
- good example
- abstractions
- programming to an interface
- good point
- software design
- implementation detail
- +0.9
- different way of thinking about something
- Wine
- focus on _what_ it should do, not on _how_ it should do it (implementation details; software design)
- change is inevitable (needs, requirements, ...)
- guarantee
- using non-guaranteed/non-standard/private information
- important distinction
- good advice
- software development: coupling
- supposed to prevent
- what comes to mind (what one thinks of; meaning) when they hear something
Annotators
URL
-
-
en.wikipedia.org en.wikipedia.org
-
The spelling "internet" has become often used, as the word almost always refers to the global network; the generic sense of the word has become rare in non-technical writings.
rare to see "internet" used to mean an internetwork in the general sense
-
-
-
Levine, R. D. and Tribus, M (eds) (1979),The Maximum Entropy Principle,MIT Press, Cambridge, MA.
Book on statistical thermodynamics that use information theory, mentioned in Chapter 1.
-
Katz, A. (1967),Principles of Statistical Mechanics: The Informational TheoryApproach,W.H.Freeman,London.
Books on statistical thermodynamics that use information theory.
-
-
en.wikipedia.org en.wikipedia.org
-
With the introduction of CPUs which ran faster than the original 4.77 MHz Intel 8088 used in the IBM Personal Computer, programs which relied on the CPU's frequency for timing were executing faster than intended. Games in particular were often rendered unplayable. To provide some compatibility, the "turbo" button was added. Engaging turbo mode slows the system down to a state compatible with original 8086/8088 chips.
-
Contrary to what it suggests, the "turbo" button was intended to let a computer run slower than the speed for which it had been designed.
I guess they called it that because it would be come across better than calling it a "slow" button!
-
-
psyarxiv.com psyarxiv.com
-
Newall, P. W. S., Walasek, L., & Ludvig, E. A. (2020, November 11). Risk communication improvements for gambling: House-edge information and volatility statements. https://doi.org/10.1037/adb0000695
-
-
-
I think maybe the terms we're using are a bit confusing.
-
-
-
while ActiveForm currently fits 99% of my use cases, I do sometimes make modifications based on the product requirements
-
Writing the uniqueness validations yourself is easy so I felt it was better to leave this up to the developer
-
-
-
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.
-
The reason Reform does updating attributes and validation in the same step is because I wanna reduce public methods. This is to save users from having to remember state.
I see what he means, but what would you call this (tag)? "have to remember state"? maybe "have to remember" is close enough
Or maybe order is important / do things in the right order is all we need to describe the problem/need.
-
My only concern with this approach is that if someone calls #valid? on the form object afterwards, it would under the hood currently delete the existing errors on the form object and revalidate. The could have unexpected side effects where the errors added by the models passed in or the service called will be lost.
-
My concern with this approach is still that it's somewhat brittle with the current implementation of valid? because whilst valid? appears to be a predicate and should have no side effects, this is not the case and could remove the errors applied by one of the steps above.
-
I made this gem because I tried reform and I found some bugs. I started to contribute but there is some things I don't like 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
- surprising behavior
- make it hard to get wrong/incorrect
- rails: validation
- intentional/well-considered decisions
- good point
- simplicity by design
- single responsibility
- should have no side effects
- DSL
- using your project at work
- reform (Ruby)
- order is important / do things in the right order
- making it easy to do the wrong thing
- unfortunate
- motivation
- hard to find time/be motivated to build/maintain unless you use it yourself (motivation; maintenance)
- annotation meta: may need new tag
- evolved into unfortunate state and too late to fix now
- software project created to address shortcomings in another project
- making it easy to do the right thing
- rails: validation: valid? has side effects
- state management
- have to remember
Annotators
URL
-
-
github.com github.com
-
Bowline will bind up Ruby and HTML - letting you concentrate on the more interesting things
-
-
en.wikipedia.org en.wikipedia.org
-
As with other software patterns, MVC expresses the "core of the solution" to a problem while allowing it to be adapted for each system.
-
-
github.com github.com
-
An additional usecase is where we would like to update multiple records
-
-
github.com github.com
-
Set your models free from the accepts_nested_attributes_for helper. Active Form provides an object-oriented approach to represent your forms by building a form object, rather than relying on Active Record internals for doing this.
-
-
www.dell.com www.dell.com
-
This is what seems to be happening to me as well! It's maddening.
-
-
coderwall.com coderwall.com
-
There is nothing wrong with accepts_nested_attributes_for. This is what you should use in your typical case. My post describes a non-typical case. ContactListForm is not an ActiveRecord object, it is an object that includes ActiveModel::Model, which does not support accepts_nested_attributes_for.
-
-
cherrycreekschools.instructure.com cherrycreekschools.instructure.com
-
I am wondering the same exact thing.
-
The Germans respected African American Soldiers more then America did by embracing black culture.
-
-
harriman-house.com harriman-house.com
-
p. 217:
We also keep a higher percentage of our assets in cash than most financial advisors would recommend --- something around 20% of the value of our assets outside the value of our house.
Compare this to my current allotment.
Tags
Annotators
URL
-
-
simplychurch.com simplychurch.com
-
The Lord led me to a wonderful Christian ophthalmologist with unconventional methods of arresting the disease through diet alone and that has saved my sight.
-
-
emaildesign.beefree.io emaildesign.beefree.io
-
We got this email from Parabo, the print shop app, and smiled. Instead of the very standard “Please confirm subscription” header text, we were greeted with a funny, whimsical hello that’s totally in their brand voice. “We really want you to want us” is a clever way to break up the usual mundane greeting, and, guess what? It totally reaffirmed why we thought we wanted to sign up for their emails in the first place.
-
-
psyarxiv.com psyarxiv.com
-
Varol, T., Schneider, F., Mesters, I., Crutzen, R., Ruiter, R. A. C., Kok, G., & Hoor, G. ten. (2021). University Students’ Adherence to the COVID-19-guidelines: A Qualitative Study on Facilitators and Barriers. PsyArXiv. https://doi.org/10.31234/osf.io/z6cg9
-
-
store.steampowered.com store.steampowered.com
-
From having the DLC only items be both constantly in your face and the kind of things you should really have access to as a base (medium sized building, most of the decorations etc) to the maps layout being seemingly purposefully made to be agravating, everytme I tried to play and like this game I got spit in the face by the devs
-
-
subpixel.space subpixel.space
-
Patreon is a good example of why generic community platforms are not the future. You could certainly say that Patreon is already at the center of content, social, and commerce. But of course, Patreon has for years been getting unbundled into A, B, and C type businesses. The reason for Patreon’s erosion is that its product design is totally unsuitable for all three use cases: it’s a bad brand platform, a bad content platform, and a bad social platform. Patreon is a classic case of what Venkatesh Rao calls “Too Big to Nail,” and businesses that try to follow in its stead will face similar challenges.
An interesting analysis of why Patreon is doomed to failure.
-
-
www.currentaffairs.org www.currentaffairs.org
-
<small><cite class='h-cite via'>ᔥ <span class='p-author h-card'>InvisibleUp</span> in All Our Selves In One Basket (<time class='dt-published'>02/10/2021 10:46:46</time>)</cite></small>
-
-
invisibleup.com invisibleup.com
-
Alienated by the Town Square There was this article I read, titled Why You Hate Contemporary Architecture, that does a really good job at describing this issue. There was no point in beauty, no point in decoration, as it was useless, distracting from the primary usage of the building, and a needless expense.
Tags
Annotators
URL
-
-
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.
-
Scalability is the problem you want to have, and sooner rather than later, but maintainability is the problem you’re definitely going to have, sooner or later.
-
‘Programs are meant to be read by humans and only incidentally for computers to execute.’
-
In principle, the naming things in code need only be temporary, but names in code stick just like nicknames at school.
Tags
- problem you are definitely going to have
- refactoring: rename
- incidental
- hard to determine/recognize if it is better / an improvement or not
- human-readable vs. machine-readable
- hard to agree on
- supposed to be temporary / things have a way of sticking/becoming permanent
- considering your audience
- maintainability
- naming things is hard
- scalability
- quotable
- source code is meant to be read primarily by humans (human-readable more important)
- good problem to have / problem you want to have
Annotators
URL
-
-
www.reddit.com www.reddit.com
-
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).
-
-
www.honeybadger.io www.honeybadger.io
-
-
Now let me ask you, do you write JS for a single page application differently from a "traditional" web application? I sure hope you do! In a "traditional" application, you can get away with being sloppy because every time the user navigates to a new page, their browser destroys the DOM and the JavaScript context. SPAs, though, require a more thoughtful approach.
-
where's the code that unloads the table-sorter plugin when the page unloads? There isn't any. There didn't need to be back in the day because the browser handled the cleanup. However, in a single-page application like Turbolinks, the browser doesn't handle it. You, the developer, have to manage initialization and cleanup of your JavaScript behaviors.
-
When people try to port traditional web apps to Turbolinks, they often run into problems because their JS never cleans up after itself.
-
All Turbolinks-friendly JavaScript needs to: Initialize itself when a page is displayed Clean up after itself before Turbolinks navigates to a new page.
-
we plan to migrate to Angular 1, and we'll finish out the decade on React
Wrong direction: I'd recommend migrate from Angular to React.
-
-
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
-
-
www.erudit.org www.erudit.org
-
décoder et analyser les effets réels plutôt que les effets anticipés
-
-
www.reddit.com www.reddit.com
-
when it comes to personal machines, I expect them to just work so I can work.
-
the most productive environment possible for people that use their computer to create.What is a productive environment?How do you measure productivity in an operating system environment?How do you compare YOUR distribution to other distributions when it comes to productivity?Is the way in which 'people that use their computer to create' (creators) the same across all professions and activities?Does a photographer have the same requirements for a productive environment as a software engineer?Why do you think your distribution will be the best for delivering a productive environment than any other Linux distribution?
-
-
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.
-
-
www.youtube.com www.youtube.com
-
I chose 18.04 because it's the latest LTS version, and I'm not keen on updating my OS every year or so. (I like getting things stable and not having to worry for a while)
Tags
Annotators
URL
-
-
pop-planet.info pop-planet.info
-
You don't necessarily have to resize Windows' EFI partition. You can have multiple EFI partitions.
-
-
support.system76.com support.system76.com
-
Switching to Pop!_OS From Apple If you are coming from Apple’s operating system using Pop!_OS for the first time, we can help make the transition smoother.
-
Switching to Ubuntu from Apple If you are coming from Apple’s operating system and just using Ubuntu for the first time, we can help make the transition a little smoother.
-
-
stackoverflow.com stackoverflow.com
-
You can write the query in this good old way to avoid error
-
Also there is always an option to use SQL: @items .joins(:orders) .where("orders.user_id = ? OR items.available = true", current_user.id)
-
-
maggieappleton.com maggieappleton.com
-
Tim Ingold's short but beautiful introduction Anthropology: Why It Matters.
This could be an interesting read.
Tags
Annotators
URL
-
-
github.com github.com
-
A.joins(:b) .where( A.arel_table[:something_a].eq('xxx').or(B.arel_table[:something_b].eq('yyy')) )
-
but if .or() throws an error then I'm back to the bad old days of using to_sql
-
-
view.connect.americanpublicmedia.org view.connect.americanpublicmedia.org
-
“9to5: The Story of a Movement,” premiered this week on PBS.
Tags
Annotators
URL
-
-
psyarxiv.com psyarxiv.com
-
Reinders Folmer, C., Brownlee, M., Fine, A., Kuiper, M. E., Olthuis, E., Kooistra, E. B., … van Rooij, B. (2020, October 7). Social Distancing in America: Understanding Long-term Adherence to Covid-19 Mitigation Recommendations. https://doi.org/10.31234/osf.io/457em
Tags
- Impulsivity
- Procedural justice
- Partisianship
- Trust in science
- Trust in media
- Obligation to obey the law
- Emotions
- lang:en
- Adherence
- Capacity
- is:preprtint
- Compliance
- Detterence
- USA
- Oppurtunity
- Health behaviours
- Social distancing
- Pandemic compliance
- Political orientation
- Public health behaviours
- COVID-19
- Social norms
Annotators
URL
-
-
alistapart.com alistapart.com
-
I hope we see new CSS capabilities arise that allow this sort of effect without the need for trickery.
-
Since CSS doesn’t (yet) offer a way to style grid cells, areas, or tracks directly, we have to stretch elements over the parts we want to style independently from the elements that contain content.
-
-
github.com github.com
-
proposes adding a grid-cell pseudo so you can add (responsive) decorative elements to grids without having to add empty elements to your page.
-
-
stackoverflow.com stackoverflow.com
-
Although one thing you want to avoid is using frames in such a manner that the content of the site is in the frame and a menu is outside of the frame. Although this may seem convienient, all of your pages become unbookmarkable.
-
-
stackoverflow.com stackoverflow.com
-
Iframes can have similar issues as frames and inconsiderate use of XMLHttpRequest: They break the one-document-per-URL paradigm, which is essential for the proper functioning of the web (think bookmarks, deep-links, search engines, ...).
-
The most striking such issue is probably that of deep linking: It's true that iframes suffer from this to a lesser extent than frames, but if you allow your users to navigate between different pages in the iframe, it will be a problem.
-
never care and try to understand design standards
Tags
- fundamental principles/paradigm of the Web: one document per URL (ability to deep link/bookmark)
- web standards
- investing time to really understand something
- not following the standard/specification
- web: iframes
- design principles
- XMLHttpRequest
- inconsiderate
- fundamental principles/paradigm of the Web
Annotators
URL
-
-
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.
-
-
sre.google sre.google
-
-
-
-
nplusonemag.com nplusonemag.com
-
cultural capital
Introduced by Pierre Bourdieu in the 1970s, the concept has been utilized across a wide spectrum of contemporary sociological research. Cultural capital refers to ‘knowledge’ or ‘skills’ in the broadest sense. Thus, on the production side, cultural capital consists of knowledge about comportment (e.g., what are considered to be the right kinds of professional dress and attitude) and knowledge associated with educational achievement (e.g., rhetorical ability). On the consumption side, cultural capital consists of capacities for discernment or ‘taste’, e.g., the ability to appreciate fine art or fine wine—here, in other words, cultural capital refers to ‘social status acquired through the ability to make cultural distinctions,’ to the ability to recognize and discriminate between the often-subtle categories and signifiers of a highly articulated cultural code. I'm quoting here from (and also heavily paraphrasing) Scott Lash, ‘Pierre Bourdieu: Cultural Economy and Social Change’, in this reader.
Tags
Annotators
URL
-
-
-
We were especially excited to see Dorsey cite Mike Masnick's excellent Protocols, Not Products paper.
I don't think I've come across this paper before...
Looking at the link, it's obvious I read it on December 11, 2019.
-
-
www.emailtooltester.com www.emailtooltester.com
-
Similarly to a cell phone setup, you prepay your email quota. Although they famously used to offer credits that ‘never expired’, new changes mean that credits now expire after 12 months (or, if purchased before May 15th 2019, they’ll expire on May 15th 2020).
-
- Jan 2021
-
groupkit.com groupkit.com
-
(optional googlesheet & zapier integration for any other email marketing software)
-
-
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.
-
-
onezero.medium.com onezero.medium.com
-
stackoverflow.com stackoverflow.com
-
systemd has such huge documentation. systemd.unit Did you try searching for explanation yourself? What did you find?
-
-
linuxmint-user-guide.readthedocs.io linuxmint-user-guide.readthedocs.io
-
This is a store we can’t audit, which contains software nobody can patch. If we can’t fix or modify software, open-source or not, it provides the same limitations as proprietary software.
-
-
blog.linuxmint.com blog.linuxmint.com
-
http://letmegooglethat.com/?q=How+to+change+the+default+search+engine+in+chromium&l=1
-
We can certainly explain the issues snap cause without using political or religious arguments. We did so in the documentation I linked to above.
-
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".
Tags
- I have a differing opinion
- not sure they meant it that way
- unintended connotations
- not necessarily the case
- have to be careful with choice of words
- good point
- neutral/dispassionate/impartial/objective wording
- funny
- good policy/practice/procedure
- political correctness
- teaching one how to do/solve things on their own (teach a man to fish)
Annotators
URL
-
-
github.com github.com
-
I want to write my own scripts first, but may end up graduating to this.
-
-
github.com github.com
-
The code is far simpler and easier to understand/verify
-
-
scriptingosx.com scriptingosx.com
Tags
Annotators
URL
-
-
github.com github.com
-
How should this be manually tested?
-
-
-
I'm still pretty proud of the project and I don't want to see it gone, so I want to keep updating it when needed. But on the other hand, the feature set is pretty stable and well working now (AFAIK) so I also don't see the need to pretend to be actively maintaining it.
-
It's not impossible, but it's not likely I would accept someone I haven't worked with IRL or know on a personal level. That's because I want some form of creative control over the direction and I want to maintain the existing code style. If I know you I'm more likely to know that this will keep working the way I want it to.
-
Show me good PRs, bug triaging, documentation fixes, whatever and you're a candidate if you ask for it.
-
-
www.carbonbrief.org www.carbonbrief.org
-
The relationship between cumulative CO2 emissions and temperature change is known as the “Transient Climate Response to Cumulative Emissions” (TCRE) and is a robust predictor of CO2-induced warming across a wide range of emissions levels and pathways.
Ist für mich ein weiterer Topic bei der Darstellung der globalen Erwärmung.\(Insert LaTeX\)
-
-
-
stackoverflow.com stackoverflow.com
-
Great, I can use vw to scale text so it doesn't look puny on a desktop! Perfect... Oh. Huh, now the text is too small to read when viewed on a phone. Okay, well I can just use "max(x,y)" to make sure it doesn't get shrunk beyond a minimum size. Perfect... Oh. Hmm. Looks like "max" isn't supported properly by Chrome. Okay, well guess I'll just use "px" again.
-
-
-
Change any of the <option> by double clicking on the number.
-
-
css-tricks.com css-tricks.com
-
overflow-wrap: break-word; makes sure the long string will wrap and not bust out of the container. You might as well use word-wrap as well because as the spec says, they are literally just alternate names for each other. Some browsers support one and not the other.
-
-
forums.theregister.com forums.theregister.com
-
It won't work if $HOME is not under /home. Really. Not even if you softlink. You need a bind mount
-
Flatpak as a truly cross-distro application solution that works equally well and non-problematic for all
-
Canonical would do well to make sure they dont complicate things for whatever the next big Linux shift is.
-
What's wrong here is Canonical trying to position itself as a powerhouse and ascertain control over Linux users.
-
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.
-
Why did I put the kdb in the snap file system? Because the app is sandboxed, so I had no choice.
-
+1 For Devuan here, running it on my home and work machines, and on my son's laptop, despite his IT teacher telling him to install a proper operating system like Windows 10....
-
>Linux needs an app delivery format Yeah, it's incredible that it has managed to survive for so long without one.
-
It's Snap that drove me to Arch, so it did me a huge favour. Seeing things like GNOME as a snap and other 'core' products wasn't something I was comfortable with. Personally, I prefer flatpaks as a packaging format when compared to snap and appimage. I agree that Linux needs an app delivery format, but snap's current implementation isn't it.
-
You stick with what you know. It's trouble free because you know how to use it. That's achievable on any of the main OSs, even (gasp!) Windows.
-
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.
Tags
- bind mount
- surprising behavior
- downsides/cons
- could be easier / more difficult than it needs to be
- Flatpak
- alternative to mainstream way
- arbitrary limitations leading to less-than-ideal workarounds
- cross-distribution
- less-than-ideal workarounds
- too much control/influence by a single company/entity
- agility / ability to pivot/shift as requirements/technologies/preferences change
- arbitrary limitations
- annoying
- leave it alone
- forced on you
- comfortable because familiar
- unintended consequence
- unfortunate
- better/superior solution/way to do something
- snap: bad
- isolation (security)
- needs to be standardized
- standard
- people stick to what they know
- missing/lacking
- limitations leading to workarounds
- systemd: bad
- packaging software
- Devuan
- Canonical
- trying to control you
- want it to just work
Annotators
URL
-
-
aeon.co aeon.co
-
In his classic text, Thought as a System (1992), the US physicist and philosopher David Bohm
I have his QM text, but didn't know(?) he did philosophy like this.
-
-
www.americanpressinstitute.org www.americanpressinstitute.org
-
The purpose of news is to inform, educate, and give us understanding and knowledge of what is going on in the world. It helps us to keep up to date with issues so we are in the know and fully aware of events taking place.
-
-
-
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.
-
I think this is very important feature to implement. Because for now we need to wrap target components by useless wrapper nodes.
Tags
- use case
- Svelte: slot
- useless wrapper elements
- limitations leading to workarounds
- unfortunate workarounds
- 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)
Annotators
URL
-
-
-
Moving DOM elements around made me anxious and I wanted to preserve natural tab order without resorting to setting tabindex, so I also made a flexbox version that never moves DOM elements around. I think it's the superior solution, at least for the layouts I was going for. https://github.com/wickning1/svelte-components/blob/master/src/FlexCardLayout.svelte
-
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.
-
-
github.com github.com
-
// read-only, but visible to consumers via bind:start export let start = 0;
Can't do
export const start = 0
(because it needs to be mutable/assignable within this local component), so we have to do
export let start = 0
with a comment saying that it's read-only (by the consumer).
-
-
-
In this article, learn how to create a streaming service like Netflix and how to launch a streaming service with unique features.
-
-
developer.mozilla.org developer.mozilla.org
-
While it is easy to imagine that all iterators could be expressed as arrays, this is not true. Arrays must be allocated in their entirety, but iterators are consumed only as necessary. Because of this, iterators can express sequences of unlimited size, such as the range of integers between 0 and Infinity.
-
-
www.bloomberg.com www.bloomberg.com
-
ow the Coronavirus Recovery Is Changing Cities
Plosz. J., (2020/06/22)., How the Coronavirus Recovery Is Changing Cities. Retrieved from https://www.bloomberg.com/features/2020-city-in-recovery/?utm_medium=social&utm_campaign=socialflow-organic&utm_source=twitter&utm_content=citylab
-
-
www.reddit.com www.reddit.com
-
u/nick_chater (2020) Issue Radar: Is advice getting too complicated? And what can be done? Reddit. Retrieved from https://www.reddit.com/r/BehSciAsk/comments/hjaib5/issue_radar_is_advice_getting_too_complicated_and/
-
-
covid-19.iza.org covid-19.iza.org
-
Lewandowski. P., Lipowska. K., Magda. I., (2020) The Gender Dimension of Occupational Exposure to Contagion in Europe Institute of labor economics. Retrieved from: https://covid-19.iza.org/publications/dp13336/
-
-
marketplace.visualstudio.com marketplace.visualstudio.com
-
-
www.youtube.com www.youtube.com
Tags
Annotators
URL
-
-
-
I would love to see this features as well, since it makes component composition and reuse a lot easier.
-
-
github.com github.com
-
I've reproduced, in a very simple way, what I would like it to do: https://svelte.dev/repl/2b0b7837e3ba44b5aba8d7e774094bb4?version=3.19.1
This is the same URL as the original example given in issue description.
I'm guessing what happened is they started with that one, made some changes, and then I think they must have forgot to save their modified REPL (which would have generated a new, unique URL).
-
-
svelte.dev svelte.dev
-
https://github.com/sveltejs/svelte/issues/1037#issuecomment-737872461
Explanation (from https://github.com/sveltejs/svelte/issues/1037#issuecomment-739458005):
@AlexGalays register is an action created and passed in from the parent node (Wrapper) which allows the child to register with it. Not builtin to svelte.
That's very clever @PatrickG. Nice one. I was a bit confused when first looking at it to understand what was going on, but I think that will be a handy tool in the toolbox.
But why do we need this? If we remove all use:register, it still toggles just fine. Seems the only benefit is that this allows cleanup.
-
-
-
I wanted to use GitHub Gists which are a wonderfully low friction way of sharing code
-
-
www.donielsmith.com www.donielsmith.com
-
Depending on what other component libraries you’ve used, you may be used to handling events by passing callback functions to component properties, or using a special event syntax – Svelte supports both, though one is usually more appropriate than the other depending on your situation. This post explains both ways.
-
-
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)
-
-
atomiks.github.io atomiks.github.io
-
This is a dynamic value because of hybrid devices which can use a mix of mouse and touch input.
-
"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.
-
-
github.com github.com
-
A cleaner approach could be the use:action API.
See more at: https://hyp.is/2cvibFXNEeuMw9viXh_i6g/github.com/bryanmylee/svelte-popperjs
-
-
github.com github.com
-
Popper for Svelte with actions, no wrapper components or component bindings required! Other Popper libraries for Svelte (including the official @popperjs/svelte library) use a wrapper component that takes the required DOM elements as props. Not only does this require multiple bind:this, you also have to pollute your script tag with multiple DOM references. We can do better with Svelte actions!
-
-
-
It’s fairly common to assume that there is an onHover event handler in React, especially when you consider the naming conventions of the other event handlers, such as onClick, onSubmit, and onDrag.Why wouldn’t there be an onHover event in React?
-
-
material-ui.com material-ui.com
-
👍 Upvote issue #204 if you want to see it land faster.
-
-
stackoverflow.com stackoverflow.com
-
JSONP is really a simply trick to overcome XMLHttpRequest same domain policy. (As you know one cannot send AJAX (XMLHttpRequest) request to a different domain.) So - instead of using XMLHttpRequest we have to use script HTMLl tags, the ones you usually use to load JS files, in order for JS to get data from another domain. Sounds weird?
-