59 Matching Annotations
  1. Feb 2023
  2. Dec 2022
  3. www.janeausten.pludhlab.org www.janeausten.pludhlab.org
    1. I thought him very plain at first, but I do not think him so plain now

      This echoes in Mansfield Park "when they first saw him he was absolutely plain, black and plain; but still he was the gentleman, with a pleasing address. The second meeting proved him not so very plain: he was plain, to be sure, but then he had so much countenance, and his teeth were so good, and he was so well made, that one soon forgot he was plain; and after a third interview, after dining in company with him at the Parsonage, he was no longer allowed to be called so by anybody" (chapter 5)

  4. Jul 2022
  5. Mar 2022
  6. Nov 2021
  7. Apr 2021
    1. Ideally, GitHub would understand rich formats

      I've advocated for a different approach.

      Most of these "rich formats" are, let's just be honest, Microsoft Office file formats that people aren't willing to give up. But these aren't binary formats through-and-through; the OOXML formats are ZIP archives (following Microsoft's "Open Packaging Conventions") that when extracted are still almost entirely simple "files containing lines of text".

      So rather than committing your "final-draft.docx", "for-print.oxps" and what-have-you to the repo, run them through a ZIP extractor then commit that to the repo. Then, just like any other source code repo, include a "build script" for these—which just zips them back up and gives them the appropriate file extension.

      (I have found through experimentation that some of these packages do include some binary files (which I can't recall offhand), but they tend to be small, and you can always come up with a text-based serialization for them, and then rework your build script so it's able to go from that serialization format to the correct binary before zipping everything up.)

  8. Mar 2021
    1. One part of React that I've always championed is how it's just JavaScript. I like that in React you don't use a distinct template syntax and instead embed JavaScript, compared to Svelte's templating language
    2. I will always find React's approach easier - at least in my head - and I think more friendly to people familiar with JavaScript who are learning a library.
    1. Another important MicroJS attribute is independence. Ember, Backbone—even Bootstrap to a degree–have hard dependencies on other libraries. For example, all three rely on jQuery. A good MicroJS library stands by itself with no dependencies. There are exceptions to the rule, but in general, any dependency is another small MicrojJS library.
    1. Last week, I shared how to check if an input is empty with CSS. Today, let’s talk about the same thing, but with JavaScript.
    1. You can do and impressive amount of form validation with just HTML attributes. You can make the user experience pretty clean and clear with CSS selectors.
    1. the client form validation is the one I like a lot, because, for example, by adding required attribute to an input, I don’t need to write any additional JavaScript to warn a user, when the user submits a form without filling out the required fields
    1. function isObject(o) { return o instanceof Object && o.constructor === Object; }
    2. An array is from a logical point of view not an object - although JavaScript handles and reports them as such. In practice however, it is not helpful to see them equal, because they are not.
    3. Arrays are definitely objects. Not sure why you think objects can't have a length property nor methods like push, Object.create(Array.prototype) is a trivial counterexample of a non-array object which has these. What makes arrays special is that they are exotic objects with a custom [[DefineOwnProperty]] essential internal method, but they are still objects.
    4. arrays are not objects from a logical point of view. I'm speaking about program logic. It is sometimes necessary to check if an array is a "real" array and definitely not an "real" object. That's what Array.isArray() is for. Imagine you have a function which accepts an object or an array of objects.
    5. function isObject (item) { return (typeof item === "object" && !Array.isArray(item) && item !== null); }
  9. Jan 2021
  10. trumpwhitehouse.archives.gov trumpwhitehouse.archives.gov
    1. while Fascism died in 1945 with the collapse of the Axis powers

      I would (not) like to introduce you to Francisco Franco and Spain until the 1970s.

    2. that first began in the United States

      Oh. Hell. No.

      Aside from the British example above, the authors seem to have forgotten that "movements to abolish slavery" included movements not run by White abolitionists, such as rebellions by enslaved people. One modest example roughly contemporaneous with the creation of the Bill of Rights: the Haitian Revolution. Or if you're hung up on White people abolitionists, Bartolome de las Casas (late in life). Who the hell even thinks the US invented abolitionism? WTF?

    3. But the people do not directly exercise their sovereignty, for instance, by voting directly in popular assemblies.

      False. In New England states, they actually do. And there's this little thing called the referendum...

      (Y'know, it's not like they're wrong about representative institutions. It's that they insist on putting in stupid false shit when they didn't even need to.)

    4. The first was the sundering of civil from religious law with the advent and widespread adoption of Christianity.


      HAHAHAHAHHAHAHAHAHAHA Hang on I gotta roll on the floor for a minute HAHAHAHAHAHAHAHAHAHA



      The sundering of--

      Children. Sit down and let the adults do history.

      Needless to say:

    5. to write the document which we have today.

      Incorrect. They came up with what we have today minus twenty-seven important bits of it that comprise most of what the United States has spent the last 240 or whatever years fighting over. The Bill of Rights--the "but mah freedoms" part of the Constitution--didn't come along for four more years.

    6. The second momentous change was the emergence of multiple denominations within Christianity that undid Christian unity and in turn greatly undermined political unity.

      OK wait. So...civil law was sundered from religious law because of Christianity in the last sentence, but in this sentence, schisms in Christianity (which, remember, had sundered political and religious law) undermined political unity?

      (I mean, there were a lot of wars because of the various reformations and counter-reformations, but

      • there was no prior Christian unity, as I'm sure the Orthodox would like to remind us, to say nothing of the heretics the Inquisition enjoyed killing all over western Europe
      • political unity? Really? Like Europeans weren't over there killing each other even if they were all at least nominally Catholic?

      Look, it's like somebody thinks the multi-national, polyglot monastery in The Name of the Rose was representative of pre-Reformation Europe and forgot that The Name of the Rose is a murder mystery.

      (They didn't think that. These people wouldn't make it ten pages in anything by Eco. Bear with my nerd analogies.)

  11. Dec 2020
    1. My frustration is mainly from Svelte's choices that are very un-JavaScript-like. It doesn't have to be "like React/Vue". React is React because it doesn't restrict what you can do with JavaScript for the most part. It's just common FP practice to fold/map.
  12. Nov 2020
    1. Remember that "JavaScript" does not mean that the DOM API, AJAX, HTML5 <canvas> (and so on) are available - it just means the JavaScript scripting language is being used - that's it.
  13. Oct 2020
    1. You can set options.params to a POJO as shown above, or to an instance of the JavaScript's built-in URLSearchParams class. const params = new URLSearchParams([['answer', 42]]); const res = await axios.get('https://httpbin.org/get', { params });
    1. Checking if an object is a POJO can be somewhat tricky and depends on whether you consider objects created using Object.create(null) to be POJOs. The safest way is using the Object.getPrototypeOf() function and comparing the object's prototype.
    2. The intuition behind POJOs is that a POJO is an object that only contains data, as opposed to methods or internal state. Most JavaScript codebases consider objects created using curly braces {} to be POJOs. However, more strict codebases sometimes create POJOs by calling Object.create(null) to avoid inheriting from the built-in Object class.
  14. Sep 2020
    1. I love how they have this example with plain JS to show how slim and simple it can be even when not using react and react-final-form. It demystifies things so you can see how it works and how it would be if not using React (which in turn helps you appreciate what react/react-final-form do for you).

  15. Jun 2020
    1. What would be nice is if JavaScript had a built-in way to do what I can do in Ruby with:

      > I18n.interpolate('Hi, %{name}', name: 'Fred')
      => "Hi, Fred"

      But to be fair, I18n comes from i18n library, so JS could just as easily (and I'm sure does) have a library that does the same thing.

      Update: Actually, you can do this in plain Ruby (so why do we even need I18n.interpolate?):

      main > "Hi, %{name}" % {name: 'Fred'}
      => "Hi, Fred"
      main > ? String#%
      From: string.c (C Method):
      Owner: String
      Visibility: public
      Signature: %(arg1)
      Number of lines: 9
      Format---Uses str as a format specification, and returns the result
      of applying it to arg. If the format specification contains more than
      one substitution, then arg must be an Array or Hash
      containing the values to be substituted. See Kernel::sprintf for
      details of the format string.
         "%05d" % 123                              #=> "00123"
         "%-5s: %016x" % [ "ID", self.object_id ]  #=> "ID   : 00002b054ec93168"
         "foo = %{foo}" % { :foo => 'bar' }        #=> "foo = bar"

      I guess that built-in version is fine for simple cases. You only need to use I18n.translate if you need its more advanced features like I18n.config.missing_interpolation_argument_handler.

  16. May 2020
    1. This starter takes advantage of Typescript and Emotion. This is a personal choice, and I'd encourage you to give it a shot. If you're interested in using plain ES6 and regular scss styling, see release v1 of this library.
  17. Apr 2020
    1. Its superior not because its faster, nor because there are shortcuts for you to do things, but because you can make shortcuts to do things.
  18. Dec 2019
    1. Your task list is a plain text file, not some proprietary format owned by a company or locked to a specific application.
    2. A simple and timeless format Plain text is the simplest file format there is. It will always be accessible, by some kind of application, forever.
  19. plaintext-productivity.net plaintext-productivity.net
    1. Plaintext files are tiny, simple, quick to work with, editable by tons of great programs, searchable by all modern operating systems, easy to back up, perfect for versioning, trivial to sync between devices, and are amazingly flexible in their uses and formats.
    2. In this system, plaintext files are used for most of the backbone of your organizational system.
  20. burnsoftware.wordpress.com burnsoftware.wordpress.com
    1. made to work alongside the various plain-text, Dropbox syncing mobile notes apps such as Denote for Android and Jottings for iPhone from an app for the Ubuntu desktop. Plain text notes anywhere you want. Easily synced between your desktop and phone. Notes, plain and simple.
  21. burnsoftware.wordpress.com burnsoftware.wordpress.com
    1. Future proofs your journal entries by saving them as plain text and organizing them as you go. This means you can read or create entries when you don’t have DayJournal.
    1. The file contents should be human-readable without requiring any tools other than a plain text viewer or editor.
    2. A user can manipulate the file contents in a plain text editor in sensible, expected ways. For example, a text editor that can sort lines alphabetically should be able to sort your task list in a meaningful way.
    3. Plain text is software and operating system agnostic. It's searchable, portable, lightweight, and easily manipulated. It's unstructured. It works when someone else's web server is down or your Outlook .PST file is corrupt. There's no exporting and importing, no databases or tags or flags or stars or prioritizing or insert company name here-induced rules on what you can and can't do with it.
  22. Mar 2019
    1. what is plain language This government site describes the rationale for plain language and more importantly provides some tools for using it. Plain language can be useful when writing text for e-learning products, among other things; this is a useful site to review. There is a list of resources as well. rating 4/5

  23. Jan 2019
    1. We found that a plain language summary gives readers an instant overview of an article, making it easier to understand and also easier to find.

      Here is an example Plain Language Summary created for one of David Sommer's own articles.

      Maximize publication impact by all stakeholders coordinating their efforts

      What is it about?

      In this paper I explore the idea that in order to maximize a publication's impact, everybody needs to play their part - authors, co-authors, publishers, institutions, societies and funders. The author is the common factor that links all of these organizations and groups, so their thinking must shift towards creating a culture of discoverability, encouraging the organizations they work with to help generate impact. The author becomes the conductor, leading the orchestra of players. Why is it important?

      The case for authors taking responsibility for maximizing the impact of their research has never been stronger. With over $1 trillion invested in research every year it is surprising to find some studies showing that 50% of articles are never read, and a much higher percentage are never cited. With researchers under increasing pressure from institutions and funders to demonstrate that their research will have impact and be applied, it is critical that researchers do all they can to make sure the right people find, understand and use their work.

      See it on Kudos.

  24. Jul 2016
    1. Translation apps continue to leave much to be desired.

      Cue Roman Jakobson. In a way, by giving the illusion of mutual understanding, these apps exacerbate the problem. Also, because they do the worst job with rich language work (nuance, subtlety, wordplay, polysemy, subtext…) they encourage a very “sterile” language which might have pleased Orwell like it pleases transhumanists, but which waters down what makes language worth speaking.