1. 5

    I really don’t understand why disabling JavaScript is met with such hostility by some people. It doesn’t break sites that much (and one can always enable it for specific sites) and in a lot of situations it makes the web browsing experience objectively better!

    1. 4

      I have uMatrix set up so I run 1st party Javascript. Still, I daily encounter websites where this permissiveness results in a completely broken website with blank page. I don’t mind wasting time tweaking settings, using multiple browsers etc. to get to what I need with minimal leakage, but I’m also sure most people would find my behaviour, completely reasonably, unreasonable if not crazy.

      Fashionable web frontend development these days takes Javascript presence for granted. I talked to a bunch of candidates for a developer position recently and not one of the self-identifying front-end developers envisioned building a service without using Javascript as their main tool. JSX and CSS-in-JS are how you sprinkle what used to be foundations into JS, where “the truth” lies. Using Javascript for development of course doesn’t require Javascript to display content, but it’s not exactly surprising that those who already invested themselves in using it as their primary tool generally don’t see a problem of requiring it of others.

      Which is a long way of me saying that hostility is coming from fewer websites working well without it AND too many developers seeing this pushback as a capricious infliction on their work.

      1. 2

        and if some site (i regularly visit) does break, I’m usually writing a small user script for it. mostly, it’s just a few lines: un-lazy-loading images, removing large sticky elements, or in the case of Big Goog’, rewriting outgoing URLs to not track clicks. Though I have to admit that I haven’t yet found a satisfying solution to javascript-based onmouseover menus (on sites I don’t intend to visit often/again), except futzing with the devtools element inspector.

      1. 16

        One thing not considered: what if the cost of content marketing was raised? A ban on medium.com has been discussed before, and that site has become remarkably user-hostile.

        1. 11

          Full support of just banning medium.com or adding a “Medium.com” downvote flag

          1. 4

            Or at the very least adding a ‘medium.com’ tag that folks can use to exclude that garbage from showing on their front pages.

            1. 1

              The ability to filter out specific domains would be a more general solution, I think.

          2. 7

            This has come up a bunch of times in this thread and the chat room today, almost always serious (I think). We can query the domain medium.com trivially, but not the aliases like, uh blog.loadmill.com. Would someone like to write a Ruby script to loop our domains table and detect them? (You don’t have to write a migration to store this in the database, let’s start with diagnosis.) I don’t know if they’ll all be CNAMEs, As, CloudFlare, or what, so there’s a bit of research to be done here. With such a script we could write queries to find out if Medium is typically the bad stuff and decide if we’d be better off with out it.

            1. 5

              (not sure if a blanket ban on medium.com is good or bad, but that said:)

              I couldn’t find any DNS fingerprints (no cname or txt records; a points to AWS). looks like medium blogs send a link: rel=humans HTTP header on all HTTPS pages, though:

              ~ %  curl -sI https://blog.loadmill.com|grep humans
              link: <https://medium.com/humans.txt>; rel="humans"

              here’s it as a oneliner applied to the query you’ve posted (it’s slow, mainly due to non-responding servers):

              ~ % curl -s https://gist.githubusercontent.com/pushcx/4cd41b0a935ed11e110d5ee2df7b4428/raw/448aa84b1cd0b7f90d6000d99fc1dcdd34545d30/query.txt|grep '^|' |cut -f2 -d' '|while read domain; do curl -skIm10 https://$domain|grep -Fq medium.com/humans.txt && echo $domain; done

              They also 302-redirect through https://medium.com/m/global-identity?redirectUrl= (probably to track logged in users) when not issuing a HEAD request.

              i do like the ‘exclude personal home pages from the majority domain ban’ idea.

              1. 3

                Thanks for finding a signal. I adapted this to check all 19k+ domains that have been submitted to Lobsters; here’s the list of the 193 hosted by Medium. (Caveat: they’re Medium now and may not have been years ago when the site was submitted, and vice-versa).

                $ time (touch medium.txt; mysql lobsters -e "select domain from domains" | xargs -P 20 -i% bash -c "curl -skIm10 https://% | grep -Fq medium.com/humans.txt && echo % >> medium.txt")
                real    15m48.738s
                user    7m30.633s
                sys     2m38.201s
                1. 4

                  193 out of 19k+ domains doesn’t sound all that much to be honest. If banning only Medium would drop the amount of low quality content dramatically, then the few domains hosted by Medium does not sound like a large issue. If they are, one could discuss a solution for that at a later date.

                  Even if a ban on Medium is too aggressive, then a tag for Medium could be a solution. Even a tag that lowers the score like the meta tags for example. That would at least discourage blog spam through them as the visibility would be limited somewhat more.

              2. 4

                Previous objections have been of the form “medium.com is user-hostile”. My suggestion this time is of a stronger form: if X.com is employing marketers that are taking hostile actions against the community, then is banning X.com enough to make it unattractive to employ marketers?

                I’m not sure if that’s true, and I guess my post was about 70/30 snark/serious. It might not be good for multi-tenanted domains to get the banhammer because one guy hired some marketroids.

                I don’t know if I will have a chance to get to writing your diagnostic script, so I’m afraid I can’t promise it for you.

            1. 7

              Whenever I see a github bugtracker with half a dozen labels on each issue, I can’t help but think that they’ve reinvented Bugzilla’s Components, Bug states and resolutions, Flags, …

              1. 2

                There are a bunch of obvious useful features missing from github’s issues. GitLab is a bit better and supports sorting by priority at least.

                It also allows you to define labels at the organisation rather than project level, which is potentially useful.

                1. 3

                  I have said it before, but for what it is worth: I recommend using actual bug tracking software. Github is a source code repository hosting site. Separation of concerns and all that.

                  1. 3

                    Github issues are fine for small projects with simple and informal workflows, but I think if you need even a single label, then you need a real bugtracker.

                    Generally, if you find yourself implementing an ad hoc, unenforceable process, it may be time to look for tools that already implement it or allow implementing it in a machine-enforceable fashion.

                    “Beginner-friendly” and similar may be an exception, since they have no effect on the process and are only there to help new contributors pick things to work on.

              1. 4

                At $work we use them to monitor everything from datacentre AC units and live streams to medical refridgerators over SNMP.

                1. 7

                  Not self-hosting is a mistake and helps centralization.

                  1. 20

                    on the other hand, their hoster is (afaict) the main developer of matrix itself. so this means a stable amount of money will be available for matrix development.

                    1. 9

                      …and increases expenses and operational overhead. I have a lot of qualms with Matrix (particularly how much overhead it has), but this at least means they have the choice to self-host later, should they choose.

                      1. 6

                        Considering the many other mistakes they were seriously considering making which would have been dramatically more harmful, this seems like an overly-critical nitpick, even if it’s technically true.

                        1. 5

                          Try to use another server (for example riot.privacytools.io) and DNS block vector.im, matrix.org, modular.im and all subdomains. The experience is half broken.

                          1. 9

                            Is this since we landed all the privacy work a few months ago? (cf https://matrix.org/blog/2019/09/27/privacy-improvements-in-synapse-1-4-and-riot-1-4/) There should categorically be NO dependencies on any of those domains or subdomains if you’re selfhosting (unless you use a widget or integration manager hosted there, but then you’re not self-hosting any more).

                            1. 2

                              On riot?

                              I use riot with a self hosted server and the only thing I have to whitelist in umatrix is the domain of my server.

                              1. 1

                                Still better than Discord.

                            2. 1

                              I don’t think this is a problem, since it’s relatively easy for Mozilla as an organization to move to a different matrix hosting provider or start self-hosting if they ever have a problem with the hosting provided by the company developing matrix. This is no more problematic than Mozilla switching from one VPS provider to another for their build infrastructure.

                              1. 0

                                I think you underestimate how bad riot software is.

                            1. 9

                              RFC 3676 is very widely implemented and solves this in the way you want. You’re either looking for that or looking to reinvent it.

                              I’m curious how you might get vim to insert/preserve those spaces, though.

                              1. 3

                                vimrc: autocmd FileType mail setlocal formatoptions+=aw
                                muttrc: set text_flowed=yes

                              1. 1

                                pretty small and no plugins. the most useful parts (that’s not too common) are

                                " block cursor in normal mode, bar cursor in insert mode, underline cursor in replace mode
                                let &t_SI = "\<Esc>[6 q"
                                let &t_SR = "\<Esc>[4 q"
                                let &t_EI = "\<Esc>[2 q"
                                " less intrusive colorcolumn (-> youtu.be/aHm36-na4-4)
                                call matchadd('ColorColumn', '\%81v.', 100)

                                set undofile and friends to persist the undo history across vim-restarts.

                                1. 2

                                  Pull request opened here. Thanks for all your input!

                                  1. 2

                                    Wait, so, you just go ahead and ignore all the input? What’s the purpose of this pull request when there’s hardly any informed consensus against archive.is and in favour of archive.org here?

                                  1. 11

                                    I agree that DRM does not technically prevent copyright violations, but then again, it was never intended to, and treating its proponents as if they were too dumb stupid to know this is deeply misguided if you’re trying to make a persuasive argument. DRM is and always was an economic tool to make violating copyright law more expensive, particularly in concert with the increased availability of reasonably priced alternatives.

                                    Too, at least in North America, you never owned your “content” – we have always been purchasing a non-exclusive license with various terms attached. Like this or not, it is not a recent invention of Big Content.

                                    1. 6

                                      Saying DRM isn’t so bad, as it just enforces the legal restrictions consumers are already bound to is just wrong. DRM is preventing you from exercising your rights, e.g. fair use in the USA or the right to a private copy (.de wiki) in parts of the EU.

                                      1. 2

                                        I’m not arguing for DRM – I’m just trying to explain why the OP’s stance (media people are too dumb to understand what we techies do) is getting the issue precisely backwards.

                                      2. 4

                                        Being able to purchase something for 100$ to break HDCP and make it ripe for digital copying really throws a monkey wrench into that argument tho.

                                        How can it be an economic tool to make things more expensive when it’s incredibly cheap to defeat with a hardware device?

                                        1. 5

                                          Because there are zero people, to a first approximation, who are going to try and defeat HDCP. Yes, it only takes one person to do this and seed a torrent; but it’s not a binary win/lose – the harder things are to do, the more attractive the .99c download or $15/mo subscription becomes.

                                      1. 3

                                        Does the Wayback Machine still have the problem of retroactively applying robots.txt? That’s a misfeature imho.

                                        1. 1

                                          I believe they stopped. BoingBoing puts it in clearer words: “To be clear, they’re ignoring robots.txt even if you explicitly identify and disallow the Internet Archive.”

                                          Edit: when you submit an archival request (at least through the website), they use your user agent now.

                                          1. 2

                                            Ah, cool. For a while there was the thing where, if a site updated it’s robots.txt, the IA would zorch the old crawls iirc.

                                            1. 1

                                              I think archive.org also leaks your IP address in one of the header. I’m not sure it’s even explained anywhere, BTW. It sure surprised me when I tried doing a tcpdump on them once.

                                          1. 13

                                            I favor using Wayback because the whole point of an archive is to keep things around a long time. Wayback has, is, and will continue to do it better. By the odds at least.

                                            1. 3

                                              If taken out of context, I 100% agree with your statement. One of the benefits of archive.org is that they don’t do database-driven non-semantic URL shortening, which means that even if they do go down, you could still use the links you’ve saved for any archived page with any other archival service, including archive.today (because each archive.org link already has a date and the original URL within the text of each link itself).

                                              However, what is the extent of our integration with archive.is? I think we only use it as a search engine for archived copies, using semantic URLs, which we could also change at any moment in the future, should they go down, without any ill effects or consequences. (And I doubt anyone would actually bother to save the results of their search, either (e.g., bookmark the link that could go down), as it should be trivial to repeat the search at any time.)

                                              Anyone really disliking archive.is could also take over the domain name locally and easily redirect deterministic URLs (from lobste.rs) to archive.org, and non-deterministic ones (outside of lobste.rs) to archive.today (their other domain). It wouldn’t be possible to do the same thing with archive.org domain without a more complicated proxy setup, because they don’t seem to have alternative domains. If there’s any interest for a sample nginx config to take over archive.is locally in this way with lobste.rs integration in mind, I’d be happy to make one shortly.

                                              So, I think that the only consideration for selecting whether to remain with archive.today or switch to archive.org should be which service works better as a short-term archival search engine.

                                              In my opinion, it’s archive.today:

                                              • archive.today integrates with all the other archival services, including archive.org, whereas archive.org doesn’t integrate with anyone else at all;

                                              • archive.today seems to require way less JavaScript than the new design of archive.org search, and way less bloated than archive.org search, which stopped working for me at one point in one of the browsers;

                                              • archive.today seems to work much faster for me in general than archive.org;

                                              • archive.today provides very nice previews on the history of each page. Etc. Basically, just way more features.

                                              As per above, given our specific use-case, I don’t see any compelling reasons to switch away from archive.is and specifically to archive.org.

                                              1. 1

                                                I didn’t even know about archive.today. The proxy idea is pretty good, too. Thanks for the insightful comment!

                                              2. 1

                                                Thanks! That’s exactly the conclusion I wanted to arrive at, but forgot to write down :|

                                              1. 3

                                                Personal opinion, regarding the counter arguments: I don’t see how the Internet Archive is ‘slower’ or ‘more complicated’. The thing about it requiring more Javascript is true, but on the other hand it also saves and serves the website with all its features, instead of a glorified screenshot that breaks any interactivity (archive.is seems to even break links on the mirrored page).

                                                1. 4

                                                  Bit offtopic, but when did the Internet Archive switch to this better experience, as you claim? For all my old stuff (>15 years, sometimes >10) all I ever get is a really slow landing pag with assets missing. Thus I’m really not using the internet archive a lot.

                                                  1. 2

                                                    I use both, TBH. Some pages work better in one, and some in the other. archive.is does archive the whole page, not just a screenshot; some pages just don’t have all the resources archived properly.

                                                    BTW, I just tried both from lynx, and archive.org is 100% broken. Nothing about the web-site you’re looking for at all. Archive.is just works. Archive.org is also much slower than archive.is even if you do have JavaScript, and doesn’t even have thumbnail screenshots to see which version you’re looking for if there’s multuple versions of same page.

                                                    Since lobste.rs itself works fine in lynx, if we move to archive.org, it’ll basically break the cached link for anyone without JavaScript. (Why on earth a non-profit has to use JavaScript to present links to archived webpages is beyond me.)

                                                  1. 4

                                                    While we’re at it: can we please switch the cached link to archive.org?

                                                    • they are a well funded non-profit
                                                    • their archive is open and mirrored elsewhere

                                                    Meanwhile, archive.is

                                                    There is an old ticket on github (#331), but that was reverted without discussion a few months later.

                                                    @pushcx: you seem to have implemented that on barnacl.es, can this please also be considered for lobste.rs again? I’m happy to submit the PR.

                                                    1. 4

                                                      I’d be against such a change. Archive.today is faster, simpler, seems to require less JavaScript, has integration with all the other archives.

                                                      My view would be different if we were to integrate their database-driven non-semantic URL shortener links, which indeed would be a problem for long-term preservation; however, our cached button uses deterministic links that are better and more user-friendly at archive.today than archive.org, so, I see no good reason for a change.

                                                      1. 2

                                                        Please start a meta thread about it. It sounds like there are at least four qualities (funding, caching speed, presentation, transparency) to trade off? Here’s the commit for that revert.

                                                      1. 4

                                                        Any lobsters planning on putting a Librem 5 in their claws? Would love to hear more about it.

                                                        1. 9

                                                          I backed it, but I’ve been continually thinking about unbacking it. As much as I want to like what they’re doing, there’s a lot I’ve not been impressed with (e.g. poor release communication, their handling of the librem.one service); I’ve been on the fence. Even after reading this, I have no idea what year my device will ship in. It reads like they’re slipping deadlines again, but don’t want to come out and say that. We’ll see, I guess.

                                                          1. 2

                                                            Same on both counts. I also had a poor experience with a Librem notebook that I ended up returning; that soured me on their products in general.

                                                          2. 11

                                                            Ordered mine… looking forward to it.

                                                            I guess I’m way too literal a person. I read licences. I read words and expect them to mean something.

                                                            People have been trained if they see an “I Accept” button, you click it and carry on.

                                                            It causes me mental anguish every damn time.

                                                            I’m just not the sort of person who can blindly do that.

                                                            I loathe “I Accept” buttons.

                                                            I think a lot of people have a mindset “Purism is free software, it should be cheaper and higher spec’d hardware”,

                                                            They forget usually phones are heavily subsidized by the network providers so they can lock you in and load you up with shitware and spyware and strap you down with EULA’s.

                                                            Yes, the privacy part will be a very nice to have. I want that.

                                                            But not nearly as much as I don’t want the lock in and shitware and spyware and EULA’s.

                                                            Not nearly as much as I want to be able to tinker and improve and feed my improvements into the ecosystem.

                                                            Not nearly as much as I want the acceptance and expectation from the people I pay my money to that…

                                                            I AM gROOT!

                                                            1. 3

                                                              o/ here!

                                                              Backed their crowdfunder back … when? 2017? I plan on redeeming one from one of the later batches, so the review will takes some time still. Until then, my Nexus 5 will do fine.

                                                              1. 1

                                                                o7 to you who still uses the Nexus 5. I used mine until late 2017 when I picked up a Pixel. I’m on a Pixel 3 now and can’t imagine using a N5 still.

                                                                1. 1

                                                                  I’m still using mine. It, uh… works?

                                                                  I mean, it’s a mobile device, so I don’t expect it to be pleasant, but once I got ublock origin installed it became pretty tolerable.

                                                              2. 1

                                                                I pre-ordered one way back when they had the crowdfund. I find this tiered release rather confusing, TBH. But it’s good that they’re finally starting to ship!

                                                                1. 1

                                                                  I pre-ordered a few months ago. I wasn’t sure I’d use it enough to justify the cost (I seriously doubt it’ll cover everything I want in a daily driver device) but I decided it was worth it, because it’s something I want to see exist, so given I can afford it, I should support it. The Google/Apple mobile duopoly we currently have isn’t a great situation, so more competition (even in a very niche form) is welcome. I’m still sad about the Palm Pre, to be honest!

                                                                  However, this shipping announcement really rankled. Another 6-10 months to get a phone with a case that fits? I appreciate that they’re offering to bump people down the list, and I’ll definitely take them up on it if needed, but it feels quite disingenuous to claim “we hit our deadline” with this sort of half-baked rollout. I’m considering asking for a refund and judging the final result before committing to it now.

                                                                  1. 1

                                                                    I was moments away from putting down for one, but then I checked the specs on the modem and backed out. The set of supported LTE bands was spotty enough that I couldn’t see myself using this overseas or even on certain domestic carriers without constantly fighting reception issues.

                                                                    1. 1

                                                                      I preordered one at the beginning of the year and just got an email from Librem with effectively the same information as this blog post, promising more info in a few weeks.

                                                                    1. 1
                                                                      #define strscpy(dst, src, len)  \
                                                                          do {                        \
                                                                              memset(dst, 0, len);    \
                                                                              strlcpy(dst, src, len); \
                                                                          while (0);

                                                                      How’s this? I bet there’s still a one-off bug somewhere.

                                                                      1. 3

                                                                        not that it matters, but memset(3) will return dst, so you could (maybe not should) also do

                                                                        #define strscpy(dst, src, len) \
                                                                        	strlcpy(memset(dst, 0, len), src, len)
                                                                        1. 2

                                                                          Still has the problem of evaluating len twice.

                                                                          For clarity’s sake, a better approach here would be to implement strscpy as a (potentially inline) function rather than a macro. The types of all the arguments are known and there’s no preprocessor trickery going on.

                                                                        2. 2

                                                                          Probably just a typo, but drop the semicolon after while (0). Having it defeats the purpose of wrapping your code in a do {} while loop in the first place.

                                                                          1. 1

                                                                            You’re right that it’s a typo, but it doesn’t break anything, as far as I see. It would just equality valid to add or to omit a semicolon in the real code.

                                                                            1. 10

                                                                              The whole point of using do { ... } while (0) is to handle the case where adding a semicolon in the real code is not valid. Consider the calling code

                                                                              if (a)

                                                                              If you define your macro as #define macro() do { ... } while (0) then this works fine. But if you define it as do { ... } while (0); then this expands to

                                                                              if (a)
                                                                                  do { ... } while (0);;  /* note two semicolons here */

                                                                              That extra semicolon counts as an extra empty statement between the body of the if and the else. You can’t have two statements in the body of an if (without wrapping things with curly braces) so the compiler will refuse to compile this. Probably complaining that the else has no preceding if. This is the same reason why plain curly braces don’t work properly in a macro.

                                                                          2. 2

                                                                            How do you detect truncation?

                                                                            strlcpy will also attempt to evaluate strlen(src), meaning that if src is malformed, you will read memory that should not be read, and you will waste time evaluating it in every case.

                                                                            ssize_t strscpy(char *dst, const char *src, size_t len)
                                                                            	size_t nleft = len;
                                                                            	size_t res = 0;
                                                                            	/* Copy as many bytes as will fit. */
                                                                            	while (nleft != 0) {
                                                                            		dst[res] = src[res];
                                                                            		if (src[res] == '\0')
                                                                            			return res;
                                                                            	/* Not enough room in dst, set NUL and return error. */
                                                                            	if (res != 0)
                                                                            		dst[res - 1] = '\0';
                                                                            	return -E2BIG;
                                                                            1. 1
                                                                              char *dir, pname[PATH_MAX];
                                                                              if (strlcpy(pname, dir, sizeof(pname)) >= sizeof(pname))
                                                                                  goto toolong;
                                                                          1. 1

                                                                            This is cool, I always wondered in what order links get reposted, being of course a bit more biased to this site.

                                                                            Maybe binding in something like Reddit would be cool too, since I sometimes notice a emacs-related link I post here appear on /r/emacs, and it’s happened a few times too many for me to think that it’s random. But since I don’t keep up to the other subforms over there, there might be more going on?

                                                                            1. 3

                                                                              Maybe binding in something like Reddit would be cool too

                                                                              If @gerikson is willing to add Reddit, it would be interesting to add (just) r/programming. (I think that subreddit should be enough for the most of the stuff that usually gets cross-posted)

                                                                              1. 1

                                                                                I’ve updated the page to include links from /r/programming.

                                                                              2. 2

                                                                                I’m not familiar with the Reddit API, but maybe if there was a firehose of every link submission one could get stuff that was posted to all subreddits. I tried to keep my code written so adding another source would be possible, and doing so would be a good test. Thanks for the suggestion,

                                                                                1. 9

                                                                                  Also in case it’s helpful, here’s a blog post about how f5bot watches all of reddit: https://intoli.com/blog/f5bot/

                                                                                  1. 2

                                                                                    Well… that’s a bit more impressive than my little app. Thanks for the link!

                                                                                  2. 3

                                                                                    there’s https://www.reddit.com/new.json (docs).

                                                                                1. 38

                                                                                  It boggles the mind to see how many browser features web developers re-create poorly within the browser. Why do they fight the platform so much?

                                                                                  1. 18

                                                                                    Why do they fight the platform so much?

                                                                                    Probably a lot of bad reasons, judging by some of the sites I’ve been forced to use. However, in some cases there are good reasons.

                                                                                    For example, my employer makes a document editing app specialized for certain types of accounting workflows. We can’t use the browser scroll because the browsers cap the number of pixels “tall” that a page can be, and some of the documents our customers create would blow past the cap and break scrolling. Hence, we have our own “viewport” implementation that doesn’t work quite as well as native scrolling, but also doesn’t have that limitation.

                                                                                    Ultimately, I blame the fact that we’re creating “apps” on a platform that was designed for mostly-static documents. We can hate it all we want, but it’s not going away because the benefits are enormous (cross-architecture, cross-OS, cross-device, no “updates”, and so on). So until the browsers provide a platform that is actually designed for building “apps” rather than having those features awkwardly bolted on, things are going to continue to kind of suck.

                                                                                    1. 3

                                                                                      We can’t use the browser scroll because the browsers cap the number of pixels “tall” that a page can be

                                                                                      Wait, what? I’ve never seen browsers cap page length. Are you experiencing a hard cap, or a soft cap where perf gets bad when there’s too much to render?

                                                                                      1. 8

                                                                                        It’s effectively a hard cap. The cap is very, very large, but we have customers that use our software to produce 30,000 page documents, so we would hit it. Based on a very quick search, this seems to be a reasonable place to start if you’re looking for more information: https://stackoverflow.com/questions/34931732/height-limitations-for-browser-vertical-scroll-bar

                                                                                        1. 4

                                                                                          Just curious, what sector does produce a 30k page document? I hope they don’t print it at least!

                                                                                          1. 5

                                                                                            I don’t know much about this sort of thing (I don’t work directly with our customers) but from what I understand it’s mostly large financial institutions (banks, insurance companies) that build these huge documents that basically spell out their exposure to risk. I assume they’re never printed, my employer’s original product was for filing SEC reports without printing anything, so… hopefully? :-)

                                                                                            1. 1

                                                                                              I wonder if they’re even read! Maybe just queried for individual pieces of information.

                                                                                          2. 1

                                                                                            Wow, super interesting. Thanks for the link!

                                                                                      2. 2

                                                                                        Full ACK. There are some edge cases where you can’t really do much else. One of these I’ve encountered while building https://xkcd.wtf (yeah, that’s a domain): I don’t want to proxy all those API calls for you.

                                                                                        In the end, I learned a lot about Javascript (and it did change my mind a little bit in the positive direction (keyword: promises)), but never got it even close to the speed my Perl/CGI prototype (that just used qx{curl -s ...}).

                                                                                        1. 1

                                                                                          Out of interest, what was the assignment? was it necessary to build a frontend in javascript or perform client side rendering?

                                                                                          Visiting the site gives me the message that you don’t like it either. Is that just appealing to your audience, or is there a reason you didn’t stick wit Perl/CGI?

                                                                                          1. 2

                                                                                            what was the assignment?

                                                                                            None—the course was dropped from the curriculum just before the start of the semester. (original ass.: build anything that uses any webdev-platform (spring, django, whatever) and calls 3 different apis). I had the domain purchased in anticipation of the course.

                                                                                            is there a reason you didn’t stick wit Perl/CGI?

                                                                                            Perl/CGI is my go-to for everything (like my teletext-server). But for hosting it elsewhere, I didn’t want to proxy all the API calls (don’t ask me exactly why, though, it’s been a while since I thought about it).

                                                                                            Visiting the site gives me the message that you don’t like it either.

                                                                                            The <noscript> message? I’m one of those people™ who browses without javascript or cookies (few sites whitelisted).

                                                                                            your audience

                                                                                            The audience of this site is probably just me and a few friends; I haven’t really publicised its existence.

                                                                                            1. 2

                                                                                              I had the domain purchased in anticipation of the course.

                                                                                              Good catch, it’s a cool domain.

                                                                                              I’m one of those people™ who browses without javascript or cookies

                                                                                              I get you, I’m the same.

                                                                                              probably just me and a few friends

                                                                                              You can add me to the list now, it’s a pretty nice site :)

                                                                                              Out of interest, how many of your friends using it are the kind of people who browse without javascript?

                                                                                              1. 2

                                                                                                Thanks! In my circle of friends, I’m the only one browsing without Javascript.

                                                                                        1. 6

                                                                                          Wow, this Github thread was painful to read. Thanks for the reference!

                                                                                          1. 3

                                                                                            We had the same issue with the palemoon author for publishing PKGBUILDs on the Arch User Repository (since it patched the build process in the PKGBUILD). I personally can’t take such a project serious and wouldn’t recommend anyone to use it.

                                                                                            1. 1

                                                                                              As “upstream” I’d be happy if people came around and showed so much interest in my project that they’d start to package it on their own, even more when they’re more proficient on that platform..

                                                                                              1. 2

                                                                                                On the other hand you’ll get bug reports that you can’t reproduce because people will complain with upstream, not with the packager. And then you’ll need to go hunting for whoever messed up the binary with local patches.

                                                                                                So I can understand projects (which includes Mozilla) expecting such distributors to use a branding that is clearly different from theirs, but the attitude they demonstrated on that issue was completely out of line.

                                                                                            2. 2

                                                                                              ok I was about to reply that we shouldn’t further stamp on somebodies project (see V), but this is painful..

                                                                                              I will not be as educational next time.

                                                                                              1. 2

                                                                                                I “”“love””” what they’ve done to about:mozilla (link to git). Not condescending at all!

                                                                                              1. 2
                                                                                                curlftpfs -ossl ftp.host.tld /tmp/x
                                                                                                cp oldpost.htm newpost.htm
                                                                                                vi newpost.htm
                                                                                                1. 17

                                                                                                  If you set the contenteditable attribute, you can even live-edit the css on the page

                                                                                                  <style contenteditable style="display:block">

                                                                                                  and BTW, uBlock injected a big element at the very beginning of the linked website

                                                                                                  1. 6

                                                                                                    My brain, currently somewhat fatigued, wanted to google what a ‘contented itable’ was and what you use it for. I need a break, methinks.

                                                                                                    1. 2

                                                                                                      Oh, interesting point about making injected content visible. I may have to experiment with that. Would be good to see what extensions are really doing.

                                                                                                      1. 1

                                                                                                        hi – i made a different example that makes the style editable (using contenteditable)


                                                                                                        Note (as it says there) that if you press Enter while editing the style, the browser will inject elements that stop being treated as part of the style tag. So be careful with this new super power!