1.  

    Some people argue that closed platforms are intrinsically better than open ones? I’ve never heard of such people before. I suppose I should be glad of that.

    1.  

      Depending on what exactly you mean by open and closed platforms, I can totally see cases where that is the case.

      One of the easy points is incentives: closed platforms tend to be for-profit, and that can incentivize better artifacts. By comparison, in some cases, open platforms focus on cleverness, novelty, or community over quality of product.

    1. 6

      I’m kinda surprised the author couldn’t engage assistance to decompile the nodejs app and figure out what it did.

      Neat write-up though, and yet another example of why locking down physical access hard is so critical for security.

      1.  

        Neat write-up though, and yet another example of why locking down physical access hard is so critical for security.

        Indeed! With access to the SD card and a non-encrypted (or, even worse, non-ramdisk) filesystem, forensics was made significantly easier. :(

      1.  

        I’m confused why on a list of only five things to learn — among the incredible amount that any developer could learn — two of the recommendations are virtual DOM diffing engines.

        Maybe don’t keep learning the same thing over and over with syntax swaps.

        Maybe learn something new.

        1.  

          With a little digging, it becomes kinda obvious. This is somebody farming lobsters for traffic.

          1.  

            Now I’m wracking my brain on how to write a good and informative “5 things to learn” satire

        1.  

          The little pictures for visualizing the different address allocations are kind of neat. It’s a shame the project still doesn’t have a compelling introduction video–a similarly long-running project called TempleOS with at least as colorful a founder was quite approachable by comparison.

          1. 6

            One important omission on tlon.io is Curtis. As of today, he’s no longer working on Urbit. His own words are the best way to understand his thinking. It’s an achievement for the team, I think, that he can depart with confidence.

            Interestingly, buried in horridly-written egotistical wank is the founder, jumping ship now he’s made his money.

            1.  

              Or maybe he’s just burned out after working on it for over a decade. He talks about it over in his post on the matter, but it really is hard to read through due to his writing style.

              1.  

                I don’t think he’s actually made his money yet, in that Urbit is still too new and unproven of a system for the ownership of address space in it to be reliably profitable. I think Yarvin’s sincere when he says that he’s leaving because he’s successfully gotten Urbit to the point where a company/foundation/open-source community can take over work on it and see it towards more widespread use.

              1. 2

                Do you have a tarball of this for those of us who are packrats?

                1. 2

                  Added a link here – don’t forget to remove the question mark in the URL.

                  1. 2

                    Awesome. Got some cert errors though:

                    $ wget https://csrc.nist.rip/library/csrc.tar
                    --2019-01-14 18:57:00--  https://csrc.nist.rip/library/csrc.tar
                    Resolving csrc.nist.rip (csrc.nist.rip)... 176.31.120.134
                    Connecting to csrc.nist.rip (csrc.nist.rip)|176.31.120.134|:443... connected.
                    ERROR: cannot verify csrc.nist.rip's certificate, issued by ‘CN=Let's Encrypt Authority X3,O=Let's Encrypt,C=US’:
                      Unable to locally verify the issuer's authority.
                    To connect to csrc.nist.rip insecurely, use `--no-check-certificate'.
                    
                    1.  

                      Fixed.

                1. 4

                  We really have three options open to use:

                  And yet none of these options include what most good C libraries do, which is let the programmer worry about allocation.

                  1. 6

                    That’s not really a good fit for a high-level language, nor if you want to expose functionality that may need to do allocation internally. I do think that the module approach (where the programmer specifies the representation) is morally close.

                    1. 4

                      Wait, why do we want programmer’s to worry about allocation? Isn’t that prone to error and therefore best automated?

                      1. 3

                        Because the programmer theoretically knows more about their performance requirements and memory system than the library writers. There are many easy examples of this.

                        1. 5

                          Theoretically, yes. In practice, it is an enormous source of bugs.

                          1. 3

                            In practice, all programming languages are enormous sources of bugs. :)

                            But, here, from game development, here are reasons not to rely on library routines:

                            • Being able to audit allocations and deallocations
                            • Knowing that, at level load, slab allocating a bunch of memory, nooping frees, and rejiggering everything at level transition is Good Enough(tm) and will save CPU cycles
                            • Having a frame time budget (same as you’d see in a soft real-time system) where GCing or even coalescing free lists takes too long
                            • Knowing that some library (say,std::vector) is going to be doing lots of little tiny allocations/deallocations and that an arena allocator is more suited to that workload.

                            Like, sure, as a dev I don’t like debugging these things when they go wrong–but I like even less having to rewrite a whole library because they don’t manage their memory the same way I do.

                            This is also why good libraries let the user specify file access routines.

                        2. 3

                          It’s not the allocation that’s error-prone, it’s the deallocation.

                          1. 6

                            And not even the deallocation at time of writing. The problems show up ten years later with a ninja patch that works and passes tests but fails the allocation in some crazy way. “We just need this buffer over here for later….”

                            1. 3

                              How would a library take control of deallocations without also taking control of the allocations, too?

                              1. 3

                                As I understand, a library does not allocate and does not deallocate. All users are expected to BYOB(Bring Your Own Buffer).

                                1. 2

                                  In which case, it really didn’t matter (in this context) if allocation-isn’t-hard-it’s-deallocation-that. The library is leaving both up to the application anyway.

                          2. 3

                            Yeah, we saw what that’s like with MPI. Those bad experiences led to languages like Chapel, X10, ParaSail, and Futhark. Turns out many app developers would rather describe their problem or a high-level solution instead of micromanage the machine.

                          1. 14

                            Not that it’s hard to find, but for anyone whose curiosity was piqued by the opening paragraph of the README, here’s the commit where they switched from parody to serious.

                            1. 16
                              - ## Fork me, daddy ¯`·.¸><(((º>  
                              + ## Contribtuions
                              

                              There aren’t many commits like these.

                              1. 3

                                The original README screenshot was actually quite good.
                                Also smol and comfy.

                                1. 3

                                  OwO

                              1. 3

                                Changing my office chair to something a bit more comfortable, reading more on aquaponics and hydroponics (maybe the friendlyhaus will be tilting more biopunk in its a e s t h e t i c) and watching Vice with some friends. Should be fun.

                                1. 13

                                  @sircmpwn, please please please put a style="margin: auto;" or similar fix on the root container for the content in the pages. No centering in this day and age is kinda unforgivable.

                                  1. 10

                                    Many people, myself included, appreciate the left-aligned layout. However, I can empathise with users of ultrawides etc. To that end this ticket exists:

                                    https://todo.sr.ht/~sircmpwn/sr.ht/112

                                    1. 12

                                      Okay, but seriously, look.

                                      This is on a 1920x1080 monitor.

                                      I’d buy the left-justification style preference, but:

                                      • You still have the top navbar going all the way across the screen.
                                      • You still have the right-hand toolbar ending up dead-center.

                                      Your design needs love.

                                      1. 8

                                        Okay, but seriously, look.

                                        Right. This is how it’s supposed to look. You could trivially center this with a user style if you feel strongly about it.

                                        I definitely appreciate the feedback, but I get more positive feedback on the design than negative.

                                        1. 3

                                          It’s your project, but even in the bug tracker you yourself linked only one person is clearly in support of keeping it left-aligned–at least 3 others seem to be against it (cos, benharri, lewis from the thread).

                                          Like, even if you don’t move the whole container to the center, at least make it use the entire screen–have the righthand stuff actually on the righthand side of the page, instead of awkwardly in the middle.

                                          1. 10

                                            That’s because I direct people who complain to this ticket, and I don’t direct anyone here who praises it.

                                            1. 13

                                              Fair enough. Also, lest I leave the impression I’m just picking nits on an otherwise difficult project–thanks for making your work on this open-source and getting it going. It’s a lot of work, and I’m betting people are getting good use out of it.

                                          2. 2

                                            Right. This is how it’s supposed to look. You could trivially center this with a user style if you feel strongly about it.

                                            The only problem I can see is that “Login/Register” is right aligned, so it ends up out of alignment with the bar on the right hand side.

                                          3. 7

                                            I agree that the login box sticking out to the top right looks broken.

                                            Also a utilities column on the right side of the left-justified page looks a bit weird, if going left-justified wouldn’t that look prettier along the left edge of the window, with a proper ragged right look?

                                            1. 1

                                              I feel like it wouldn’t be too bad of an issue if the login/register form was at the right, and possibly the pictures too.

                                              I don’t agree that the fix is as simple as centering everything, SirCmpwn has a vision that still needs to be respected, but the design just needs some more thought, and I don’t think it should be a big priority at this point in the development.

                                        1. 3

                                          Tagged this with “Law” as well since the interesting angle here is how this can be seen as a response from AWS to the MongoDB license change.

                                          1. 2

                                            Good reasoning, but I think it’d be a little better to reserve that for submissions that are primarily about law.

                                          1. 10

                                            2019 is off to a good start, you goobers.

                                            How did the dad network his felines? Cat cable!

                                            What’s a pirate’s favorite archive format? tarrrrrrrrrr

                                            What’s a pirate’s favorite color format? ARGB

                                            What’s a pirate’s favorite historical internetwork? ARPANET

                                            What’s a priate’s favorite functional language? Haskell, obviously.

                                            1. 4

                                              TL,DR: former (current?) lobster moving on from Mozilla, still doing rust, getting ready to do more webassembly, looking for work.

                                              Do we want a post on Lobsters every time somebody dev-internet famous quits their job? That’s more of an orange-site or Twitter feature, yeah?

                                              1. 22

                                                I think it’s fine to have posts like this. It’s interesting to hear his reasons for leaving Mozilla + thoughts on the future.

                                                1. 8

                                                  I hear you. What I read in @friendlysock’s comment is that posts like this, with their focus on the author’s life feed a culture of celebrity that veers more towards the orange site despite lobste.rs trying to be something different.

                                                  1. 3

                                                    I kind of want to gently push back on this. Before I do though, I just want to say I am not trying to defend le orange site, just to be clear. One thing that jumps out to me is that it isn’t celebrity culture to want to know how a company treats its employees. Especially at a place like Mozilla, especially at this moment in time. Something like 8 states have seen teachers trikes in the last couple of years, with one of them set to strike in days. The number of other professions seeing labor activism is increasing after some pretty dark years. It may seem like petty sniping at the boss or the company to some but when I read his complaint the first thing that jumped to my mind was “shame theres no labor organization at hand that was tailor made to help with this sort of situation”. Its important to keep that in mind with these posts, and not file them under what we believe we see as others experience, specifically “this will foster a weird parasocial fandom environment because others will want to gossip about this”. We don’t know what happened at Mozilla but personally my first instinct is not to trust the boss. It may be his life, but we share his condition I guess is my point.

                                                    Something else that occurred to me after I posted my main reply to OP is that Rust itself is, in essence, a novel extension of the political into a software project. It makes the inclusive nature of the community a fundamental element of its development. That might not be totally novel in itself, but its the first time I know where the software in question is supported by an essentially political company, and even more importantly, is on track to power one of the most deployed applications in the world. How Mozilla deals with something like this, and how the Rust community deal with it, have interesting and important implications.

                                                    One last thing is just to repeat something that was said by someone else the last time this conversation came up (I think), the highly technical articles seem to get quite a bit less actual conversation, and I think if people took the time to ask questions, not even deeply understand the topic just contribute a sophisticated guess, rather than fret over stuff like this then this whole conversation would probably go away. People would be talking, learning (as many people profess to want to do on websites like this), and the worry about superficiality would go away. This is something I myself should definitely practice.

                                                    1. 2

                                                      Thank you for a very considered response. It makes me consider other approaches as a way forward that don’t involve bucketing items based on raw technical content.

                                                      1. 1

                                                        and a thanks right back to you for taking the time to cordially respond in kind.

                                                2. 12

                                                  A well known developer, who works in one of the most active and watched development communities/languages, who also works at a storied company one of whose products facilitates web browsing for something hundreds of millions of people (which is slowly shifting to using the previously mentioned language, itself a fairly important event) and who actively proselytizes for previously mentioned language all over the internet (and has written a book about this language, published by one of the most reputable tech publishers out there), is (according to him) being shafted by said company, which, incidentally, forms its business model almost entirely around a moral appeal. On top of all of this, the person in question is one of the more outspoken political developers working in free software. TL,DR: its important to me, and I’m glad it was posted here, as I’d like to personally know how mozilla treats their employees, especially since I’ve actually met, socialized and coded with multiple mozilla devs IRL. I’m not sure if its schtick or ideology that drives you to police these threads in precisely this way but I’m not sure you could be more off base on this one.

                                                  as an addenda; its worth also noting that klabnik didn’t just emerge out of the blue last week, he was a well known Ruby developer for years before that.

                                                  1. 6

                                                    its important to me, and I’m glad it was posted here, as I’d like to personally know how mozilla treats their employees, especially since I’ve actually met, socialized and coded with multiple mozilla devs IRL. I’m not sure if its schtick or ideology that drives you to police these threads in precisely this way but I’m not sure you could be more off base on this one.

                                                    Noone is questioning if it might be important to some subset of lobste.rs users and even if it is important to all users it doesn’t mean that this automatically becomes appropriate for posting on lobste.rs. I personally think that this site is for technical articles which this is not and I would prefer to keep such articles out of here.

                                                  2. 6

                                                    While we are still interested in what our fellow technologists are doing this week I would imagine this sort of “what I’m doing this week” is relevant.

                                                    1. 2

                                                      It is, in those threads. Like, we have a special space set aside to handle that sort of reporting.

                                                    2. 14

                                                      On that note, it’d be great to keep trolling like this on that orange site.

                                                      1. 2

                                                        Are you using “trolling” in the sense of “an insincere, outlandish comment made in bad faith to provoke a reaction” or in the sense of “something with which I don’t agree”?

                                                        1. 1

                                                          My point raised here was a valid meta question and not trolling–and my (valid) question was left on the orange site specifically because I didn’t think it was pertinent. If you want to hash it out in PMs, you know where to find me.

                                                          1. 4

                                                            you sure could’ve done some editing if that was your “valid” point.

                                                        2. 1

                                                          I get where you’re coming from but IMO @steveklabnik is a special case. His advocacy is at least a goodly chunk of what has allows Rust to grow into the community it is today.

                                                          Think of it as a post about the future of Rust, Mozilla, and co-incidentally one incredibly talented, community minded engineer.

                                                          1. 5

                                                            We can all make special-case exceptions for our favorite engineering celebrities–and that’s a bug, not a feature.

                                                            Treating this post as some big marker about the future of Rust (!) or Mozilla (!!) is just the same Great Man theory that I’m willing to wager Klabnik himself would scorn.

                                                            1. 1

                                                              Point taken.

                                                              However I’d argue that if we’re going to make fine point content distinctions like this we could also eliminate a bunch of the posts we see here with clickbait title like “$LANGUAGE is dead!” or “$BLAH considered harmful”.

                                                              It’s a slippery slope. I thought this post added value beyond just informing us of @steveklabnik’s current and future status, but it’s not a hill I’m prepared to die on :)

                                                        1. 7

                                                          OK, so, i think collecting resources to point people at alternatives to popular sites people might have a problem with for whatever reason is great.

                                                          But I have a real honest to god problem with the moral judgement being passed by the author when they use the word “ethical” for said alternatives.

                                                          What makes Mastodon more ethical than Twitter? The fact that it’s distributed? Sure, OK. I can see that. There is no ONE company making filthy lucre off of dubious practices you’re supporting by using it, but can we really call a network that has instances dedicated to Japanese kitty porn “ethical”?

                                                          Now, personally, I don’t have a problem with anyone enjoying any kind of art they want so long as consenting adults are involved, but my point here is that ethics represents a big fat gray area and are a sliding scale depending on your own personal values, so to say that you’ve created a guide to “ethical” alternatives feels like a dangerous claim.

                                                          This may seem like quibbling, but I don’t think it is. Businesses are entities that exist to make a profit. In our current world, all the “ethical” alternatives could not exist without the capatalist driven infrastructure that built them, so beyond a certain point all of this can be called into quesiton.

                                                          1. 9

                                                            could not exist without the capatalist driven infrastructure that built them

                                                            It’s fairer to say that the capitalist internet businesses could not exist without the socialist-driven infrastructure that built them. Silicon Valley’s clean secret is that it’s built on the back of ARPA, DARPA, NASA and military-industrial public funding.

                                                            1. 3

                                                              I think that’s true, but I also do think that the economies of scale that have made the kind of resources that many of these more ethical distributed systems rely upon were created by the relentless drive to offer hardware and services more cheaply than your competitors.

                                                              1. 3

                                                                Living and having business experience in a (somewhat, at least) socialist country, I know from experience it’s real easy to roll with that claim.

                                                                You’d be crazy to pay taxes, and have ARPA, DARPA and NASA offering you grants, and turn them down on principle.

                                                                Maybe when the laser was invented, it was easier to trade know-how for “mixed economy” cold war American socialism than raise private equity, but I wonder how much innovation in our fields comes through government funding nowadays.

                                                                Here gaming the system and scamming grant money is the general way to go, not innovation.

                                                              2. 4

                                                                You simply assert your philosophical world view, and then under that outlook, you can say which system is more ethical.

                                                                This particular case, of course, falls under the assumption that a website that respects your privacy is more ethical. Which is an easy position to arrive and defend.

                                                                Businesses are entities that exist to make a profit. In our current world, all the “ethical” alternatives could not exist without the capatalist driven infrastructure that built them,

                                                                False dichotomy. Perhaps they wouldn’t exist in the same capacity with the same infrastructure, but they will exist nontheless.

                                                                1. 3

                                                                  False dichotomy. Perhaps they wouldn’t exist in the same capacity with the same infrastructure, but they will exist nontheless.

                                                                  I’d love to believe you’re right but I don’t buy it. Services like Mastodon exist because compute power has become super cheap. I’m not convinced that would ever occur under a different system of economics like Marxism or communism or anarchy.

                                                                  If you have a compelling counter argument and would care to offer it I’d be super interested.

                                                                  1. 2

                                                                    Services like Mastodon exist because compute power has become super cheap.

                                                                    Services like Mastodon exist because people like talking with other people and sharing cat pictures.

                                                                    With more expensive/less-powerful compute, we had mailing lists and BBS–often hosted by weirdos.

                                                                    Also, without explaining what you mean by those other systems of economics, it’s really unclear how to go about having a polite and productive discussion.

                                                                    1. 1

                                                                      So, the reason that companies like Twitter and Facebook and the like have policies that erode user privacy is monetization, right?

                                                                      In order to make money, they sell demographic information on their users.

                                                                      In, for example, a post materialism society, there would be no need for such because money mightn’t exist. At that point you can pick any number of other choices for organizing society - anarchy for example (the absence of government organizing from the ground up kind, not the Mad Max kind).

                                                                      I am not a socio-political expert so it’s possible my terminology here may be a bit fuzzy.

                                                              1. 1

                                                                Neat, but it’d be nice to write just straight HTML snippets and then have them transformed into the VDOM structure the author wants you to write.

                                                                1. 3

                                                                  The shaders don’t have versions? Is that not a thing any more?

                                                                  1. 1

                                                                    I don’t know offhand, but that might be a side-effect of being WebGL instead of OpenGL proper. That’s just a guess on my part though.

                                                                  1. 3

                                                                    We need to address the undervaluing of HTML and CSS for what it is: gender bias. Even though we wouldn’t have computer science without pioneering women, interloping men have claimed it for themselves. Anything less than ‘real programming’ is now considered trivial, silly, artsy, female. That attitude needs to eat a poisoned ass.

                                                                    This…didn’t really seem to follow from the rest of the article’s discussion.

                                                                    1. 1

                                                                      Yeah… I agree with the remark you quoted, but you’re absolutely right that the article didn’t build context for it.

                                                                      1. 1

                                                                        Yep! It’s not a bad sentiment, but rhetorically it’s just kinda out of place.

                                                                    1. 2

                                                                      Lots more interesting stuff on the mailing list.

                                                                      There seems to be a trend, if I’m not incorrect in my reading, of “let’s rewrite a bunch of the core logic in JS”.

                                                                      1. 4

                                                                        Looking at SLoC right now, the codebase is almost exactly split between C++ and JS.

                                                                        language    files blank comment   code
                                                                        --------------------------------------
                                                                        C++           360 36718   26562 207587
                                                                        JavaScript   1098 39149   63692 195828
                                                                        CSS           278  7371    2664  30455
                                                                        C              83  5339    8278  29463
                                                                        C/C++ Header  413  7091    8979  24034
                                                                        IDL           238  3205       0  18852
                                                                        XML            40  1365     690  16902
                                                                        JSON           24     7       0   5367
                                                                        DTD           180   772    1360   5344
                                                                        Python         24   893    2422   3740
                                                                        
                                                                        1. 5

                                                                          people forget that Mozilla was an early pioneer in writing desktop applications in JavaScript; much of the UI chrome to go with XUL is written is JS

                                                                          1. 2

                                                                            Right, but didn’t they back away from it a lot with Firefox 1.0? I thought the original Mozilla/Seamonkey UI was all XUL/JS, but doing UI in JS in 2003 used too much RAM and was too slow? It feels to me like the cycle is completing itself, and now the advantages of JS start to outweigh the cost, partly because JS performance has been substantially improved.

                                                                            That said, the idea of async JS to do message filtration seems like a Really Good Idea. And I won’t miss XPCOM, and never really understood why it was there since all the modules are effectively advertising interfaces across what is ultimately a large statically linked codebase.

                                                                      1. 7

                                                                        This really reads to me as more of a condemnation of SOA and excessively large teams than any real shortcoming of monorepos.

                                                                        I’m also kinda curious how many teams that write software really are that large.

                                                                        1. 1

                                                                          Yeah, I just stay far away from organizations that have 100+ full time coders churning out lines of code high on energy drinks and psytrance until there’s so much code Git can’t even handle it.

                                                                        1. 1

                                                                          Very thin article, nothing really actionable, nothing to learn, nothing to critique.

                                                                          Better submissions about the same events would be, for example, a postmortem from the teams that had to handle the mess.

                                                                          News stories are almost never good like this.