Threads for JayGray

  1. 3

    Do we need to tell them what that word means in the UK…?

    1. 5

      Relax, it’s just the word site pronounced by Sir Sean Connery.

        1. 1

          Another from Sir Sean: well shag me with a spoon

        2. 4

          It means the same in the US. :-)

          1. 1

            Appropriate, since it’s written in bash. Do I need to tell what that means in Norwegian?

            (hint: I wrote a sort of bash cleaner program that I couldn’t call that.)

          1. 2

            I’ve seen CSVW metadata used to define field types using JSON-LD. It seems fairly popular in some open data communities.

            1. 1

              When in doubt, follow Gregg Kellogg

            1. 1

              Very interesting. The concept is similar to RDF/XML where the meaning of the fields (the header) is defined in an external namespace.

              1. 3

                NotePad++ is my IDE

                1. 1

                  Reminds me of Gertrude Stein’s observation: There is no there there.

                  1. 1

                    An example of a lobster thread worth bookmarking. Wishing other threads would adopt a similar tone when presenting/responding.

                    1. 2

                      Correlation is not transitive, but causation is transitive. We cannot simply replace causality with correlations. (Additionally, causality is bounded by the laws of spacetime, while correlations can happen in concomitant elsewheres.)

                      The parts of machine learning which are formalizeable and explicable are not replacements for statistics, but part of its standard techniques; polynomial regression and SVMs can make it easier to see which inputs are important.

                      1. 1

                        Not sure I get your point. Are you saying: correlation expresses relationships between/among items (events, observations) and causation expresses the direction of a relationship and the value of that direction? Is your point that correlation is like a state machine (depicting “as is”), and that causation can only be determined when we have a large collection of observations over a period of time (“transitive”)?

                        1. 1

                          (Pearson) correlation is a computed coefficient between datasets. Correlation is not transitive; there exist datasets X, Y, and Z such that the correlations between X and Y, and Y and Z, are both high; but the correlation between X and Z is low.

                          Causation is usually transitive by definition. In Bayesian networks, an interpretation of directed acyclic graphs, causality is encoded by graph edges, and transitivity of causality is encoded by graph paths. Each edge is weighted with a probability, and we can multiply the probabilities along each path in a form of Bayes’ rule to give a weight for that path.

                          Then, my point is that it’s not always possible to recover a correct Bayesian network from a family of Pearson correlations. This is because, while we can easily map each measured dataset to a putative causal vertex, we cannot map correlations between datasets to edges in a Bayesian network by simply transforming the correlation coefficients into edge weights. We cannot tell whether a correlation is actually causal or merely a spurious correlation.

                          This is but one special case of the general concept that correlation does not necessarily imply causation.

                      1. 1

                        Very well written and on-point. Makes it clear where/how to use JSON-LD.

                        1. 1

                          Could you please elaborate a bit about JSON-LD?

                          1. 3

                            Sure. Start here: https://www.w3.org/TR/json-ld11/. Then go here: https://schema.org/docs/full.html JSON is largely silent about datatypes. XML ‘began’ by defining basic data types (integer, decimal, float), thereby enabling arithmetic. When XML was enhanced to support ‘namespace’, RDF emerged to add more data types to XML (registered at a specific namespace). JSON-LD is the evolution of XML/RDF in JSON notation. Google Search is a principal consumer of JSON-LD, now rendered as the Google Knowledge Graph.

                        1. 3
                          1. 1

                            Amazing - a visual equivalent to lexical search patterns such as (SKOS) exactMatch, closeMatch, simlarTo. One potential application: integration with WordNet (for term-search). But the search engine pattern-matching doesn’t have a lexical equivalent (AFAIK). Imagine entering pattern terms in Google search and seeing similar results (not currently possible). Here’s an idea: accept two images and find images that share the properties of the two.

                            1. 1

                              Very well written. Like SQL itself, transitions easily from abstraction to procedure.

                              1. 4

                                The two with which I identify are:

                                Pencil and paper are the best programming tools and vastly under used

                                An IDE is for when you are dead-certain about what to do. Design reviews are as-important as code-reviews, and design reviews are best conducted with pencil and paper.

                                Typed languages are better when you’re working on a team of people with various experience levels

                                In the vernacular, types are a common language that improves communication

                                The one I slightly disagree with is:

                                People who stress over code style, linting rules, or other minutia are insane weirdos

                                Those beautifiers make it easier to do diffs; if you consistently use specific beautifiers, code reviews are easier.

                                1. 1

                                  Those beautifiers make it easier to do diffs; if you consistently use specific beautifiers, code reviews are easier.

                                  This is a problem with diffs though, not with code or its formatting.

                                  1. 1

                                    My interpretation of the formatting/linting was more about those who nitpick over things like 2 spaces, 4 spaces, or tabs. For example the code styling story is vastly different in say JS vs Elm. There are many beautifiers and linters in JS and the style always slightly changes when you move between teams or companies. I’ve even been on teams in the past 2 years that don’t use any because they don’t like them. On the opposite end you get a language like Elm where there’s 1 community formatter that doesn’t even have a config. This means that 99% of all Elm code is formatted identically.

                                    1. 3

                                      The Elm solution to this problem is just so much better. Just get something decent looking and consistent and shut down all the arguing.

                                      Even if you’re someone who thinks formatting and consistency don’t matter, there will always be plenty of people to whom it does, and the only way to avoid wasted time and arguments is an auto-formatter.

                                      1. 2

                                        Copy that. We just try to ‘formalize’ a specific beautifier (for specific code sets) and its values and say: that’s it! Do what you want but bring it formatted to team meetings (a form of “dress code”). Diffs are where arguments start, and common beautifiers make diff analyses easier IOE.

                                    1. 1

                                      I filed an issue on the repo. To repeat here for others to consider: this approach would be very valuable for diffing (comparing) semantic structures in different formats. Consider an extreme example: an RDF/XML file (file.rdf) and an NT/triples file (file.nt). Do they mean the same thing (two completely different syntaxes)? If they are similar (e.g. share different types) but have different properties, what is the difference between the two property sets?

                                      1. 2

                                        Brilliant - a short description of how to manage and motivate a team. The author uses abstract concepts in a passive voice (as would any observer of a real-world scene). The trick is to translate the concepts into your personal behavior (the practical things that need doing when leading a project). One of my new bookmarks.

                                        1. 1

                                          Has an amazing JavaScript parser to extract data from a very complex source. Also the relations selector is nicely done but depends on a slightly more complex data structure than is conventionally used in D3 apps that use hierarchical JSON.

                                          1. 1

                                            A great read! Humor + math in good proportions [where the square of each sums to one ;) ].

                                            1. 1

                                              very cool reverse engineering.

                                              1. 4

                                                We’ve used Neuron for 6 months. Our team uses it to make lightweight comments about our development projects and production apps. Comments range from programming practices to building cheat sheets. We run all MD ‘zettels’ thru a GitHub repo and link the comments/notes to build idea networks. As the idea networks shake-out, we plan to move the MD files into our production documentation system - Sphinx (also an MD processor). But Sphinx requires a table of contents to link files. Neuron is much lighter weight and interactive - easy to add and link a new note. In our shop we do not standardize an editor - developers are free to use their favorite, so Emacs and Vim based systems are less attractive for us. Many folks use NotePad++ with an MD extension to write their MD notes. Before we committed to Neuron we looked at online services that also support idea-nets. But we wanted control of our files and didn’t want to go thru export/import processes to move files to/from the services.

                                                1. 1

                                                  We use Neuron (mentioned in the product list). Neuron has most of the desirable features itemized in requirement lists. In addition, the linking feature - where relationships among “zettels” are built-up over time - is what sold us on Neuron. When used with your favorite MD editor, integrated with GitHub repos, and deployed on a static server, it’s an amazing and productive environment. GitHub repo integration enables our team to author ideas and templates. It is particularly useful for ‘cheat sheets’ and similar structures that get formalized in design documents over time.

                                                  1. 2

                                                    I’ve been looking for a way to publish notes or thoughts for quite some time now, and this is inspiring. However, it seems to boil down to “My phone can run a script, so I now blog from my phone”, rather than being a way to quickly take notes from anywhere.

                                                    This is more of a job for emails I think. They’re available on every platform, with the same set of features. They fit the “write once and publish” mindset of notes, and you could even “amend” notes by replying to your own email. It would be easy to do with a sieve script when self-hosting emails, but using a subject pattern of “[NOTE]: ” with filter rules could work as well (you’d need to retrieve the “notes” folder using IMAP for example).

                                                    1. 3

                                                      My notes sites (example 1, 2) are managed with a “write once and publish” workflow, using GitHub Actions and Zettelkasten. You edit your notes on GitHub, and it auto-publishes within a minute.

                                                      You can give this a try instantly using this template repository: https://github.com/srid/neuron-template

                                                      1. 2

                                                        Thanks for creating Neuron! I’ve been using it for a few months now and really enjoy it.

                                                        In fact, right now while I post this comment, I’m trying to build it on my new Pinebook Pro (ARM64 chip.)

                                                        1. 2

                                                          I’m trying to build it on my new Pinebook Pro (ARM64 chip.)

                                                          Let me know how that goes! Daniel Kahlenberg tried to build it as well: https://github.com/srid/neuron/issues/66

                                                          1. 1

                                                            It’s not going that well. The PBP runs on battery, even when plugged in. The charger doesn’t deliver enough current to keep the machine charged, so I watch the battery gauge drain down. Cachix doesn’t help, since it’s all x86-64, so I’m pretty much compiling the world. GHC is the one I can’t get done on a single charge. The battery runs out before it finishes compiling!

                                                            Apparently there’s a way to open up the case, disconnect the battery and bypass it to run directly from the charging port. I’ll try that next. (Lovely sticker inside informs me that using the bypass without disconnecting the battery will result in damage, possibly with fire and explosion. Lithium-ion is just the best, isn’t it?)

                                                            1. 2

                                                              As of yesterday, we have nightly linux bundle here. If GitHub Actions can build for aarch64 (looks like it can?), then we could also build an aarch64 bundle automatically. That, or perhaps you can build an aarch64 bundle manually from a VM on a powerful machine (relevant), and then copy over the bundle to your laptop for running.

                                                              EDIT: This looks to be relevant: https://github.com/cachix/cachix/issues/295

                                                              1. 2

                                                                Great idea. I didn’t understand nix bundles before this. I’m building on an EC2 ARM Nixos instance now. I’m starting to appreciate Nix more… I think my previous frustration was from not being “all in” on Nixos.

                                                                1. 1

                                                                  Nope. I spoke too soon. Nix has defeated me once again.

                                                          2. 1

                                                            Ditto

                                                        2. 1

                                                          Thanks for the kind words, they mean a lot.

                                                          You’re right in that it is essentially running a script on my phone to get the file there (or else scp it over if I’m on my desktop or laptop. The distinction is that the actual work is all done server side, and what the phone script does is copy the content of the iOS shortcut into a file to be processed.

                                                          I’m still not 100% happy with it though, and I hadn’t thought of email. It’s an inspired solution because it removes the vendor-specific nature of what I have. The good thing is that regardless of the method of getting the Markdown files onto the server, the rest of the processing and site generation would work.

                                                          1. 2

                                                            It’s cool that you managed to setup something that works for you, regardless of the vendor-specific bits of your solution ! To be fair I’m a little jealous because while my phone is a real linux box (sailfishOS), featuring a terminal, bash, git, … I still lack a good way to automate tasks using something like your “Shortcuts” app.

                                                            Do you still use that solution to take notes from elsewhere though ? Or you only take notes from your phone now that you have this ?

                                                            1. 2

                                                              The funny thing is, even though I said “from anywhere”, the only place I was bothered about was my phone. Had I been serious about the from anywhere aspect, I might have come up with a different solution. Seriously considering writing the email part to go with it!

                                                              1. 1

                                                                I still lack a good way to automate tasks using something like your “Shortcuts” app.

                                                                i guess if one fiddles around with the freedesktop mime type handler stuff it could work, but that’s horrible :)

                                                                1. 1

                                                                  That could work, but still require to open the file manager which is hidden deep in the phone settings. I’d rather be able to put an icon on the app grid that I could tap to launch a script in $PATH for example.

                                                                  1. 1

                                                                    I haven’t done it but i think you should be able to just add a .desktop file pointing to your script: https://harbour.jolla.com/faq

                                                                    1. 1

                                                                      I never though about doing that ! Thanks for the idea !

                                                            2. 1

                                                              I’ve been thinking about doing something similar with email as well. I was thinking of doing a bespoke smtp server whose ip I email directly and does the processing I want. Still haven’t gotten around to it, any more than writing anything that I’d publish that way.

                                                              1. 1

                                                                I run my own mail server, which means I can use a specific alias to pipe incoming mails into a program, say:

                                                                z3bra+notes@domain.tld        |/usr/local/bin/push-note.sh
                                                                

                                                                And that script would strip the headers (verifying sender, perhaps?), use subject to name the note, and create the file in /var/gopher/notes. Perhaps even piping it through markdown and publishing as HTML as well !

                                                                1. 1

                                                                  I’ve written most of this now, need to plumb it all together and write another blog post…