1. 1

    The one I’m currently in because it’s the first one where I work directly for the public good instead of some private interests (making money for some CEO), also the team is very knowledgeable and just nice people to work with !

    1. 5

      What about other compression algos like bzip2 or xz? Learning this stuff by rote will leave you in a pickle when you get an uncompressed archive, or something more exotic than gzip.

      1. 5

        Yeah. A simpler and more versatile method frequently available is tar -xf thefile and it’ll just figure it out.

        1. 6

          There’s also the -a option to automatically determine the compressor to use based on the output filename. For example, tar caf myarchive.tar.bz2 ..

          Supported by GNU tar and FreeBSD’s tar at least, but not OpenBSD’s tar for one.

          1. 5

            There is also dtrx (“do the right extraction”), it work with all kind of formats

            1. 1

              Oh, I wasn’t aware of that

          2. 2

            I disagree. I think cheat sheets are a great way to bootstrap yourself into productivity. You can always take the formula you’ve learned and RTFM to gain more depth.

            1. 5

              Hmm, I’m generally opposed to rote learning of any kind because while it might give you enough to ‘get along’ you’ll never master anything without understanding.

              Particularly with computing, understanding (more-or-less) what you’re doing takes a little more effort but yields great rewards.

              That’s not to say all cheat sheets are evil, there are some things which must be learned — I just don’t think this one is very good.

              1. 1

                I agree that this cheat sheet is not amazing.

              2. 2

                Are man pages dead?

                Using the shell to extract files should mean it’s faster to rtfm than dig online. With a case as simple as this, learning through man or --help should be so fast there’s no need for a page like this.

                Cheat sheets should come with “See also” references anyway.

            1. 4

              On my laptop, I have 4 workspaces. Each for a different usage: top-left is browser, top-right is sublime, bottom-right is terminator and bottom-left is random things (like music, video or image editing). So it’s easy to switch to each one with familiar shortcuts.

              Random tools I like:

              • fzf for sublime-text file-search in the terminal
              • fish, a nice shell, and virtualfish for working with virtualenv
              • Tabby cat to have a cat instead of the usual new tab page that is very distracting

              That’s for hobby dev but it’s nice.

              1. 2

                How does fish work for you? I also use it as my main terminal. I personally like the changes they made to shell syntax, but it can be frustrating to enter commands found online in my experience. I’ve also tried out fizsh, which has syntax highlighting and history-based completion like fish with the standard syntax of zsh.

                1. 2

                  It’s working well. When I need to copy paste something strange, I often use bash. One of my favorite thing with fish is the alias feature where it auto-complete your alias like it’s a normal command. Also since it comes with so much built-in, it’s a lot faster to start than zsh with all the usual plugins.

              1. 11

                Here’s the issue: https://github.com/systemd/systemd/issues/4234 A fix has been commited: https://github.com/systemd/systemd/commit/531ac2b2349da02acc9c382849758e07eb92b020

                That’s a very low-profile answer, no “thanks”, no mitigation info for those who have systemd deployed.

                1. 5

                  That’s a very low-profile answer, no “thanks”, no mitigation info for those who have systemd deployed.

                  Further reinforcing the message that systemd is a project that simply doesn’t take security seriously.

                1. 6

                  I’ve reached recently the same conclusion, most websites don’t need javascript or very little. Newspapers, forums, video sharing, internal CRUDs. Cutting out the whole API + SPA stuff is often a lot more productive.

                  SPAs are nice for fancy features (live preview, realtime,..) but often not worth the complexity they add compared to the difference they make in the end-product.

                  Now most of my apps are js-free by default and then I pepper it with some light javascript when needed.

                  1. 8

                    This point of view never seems to take geography into account. It might work when you have 30ms latency. But, for example, I’m hosting my application for New Zealand users on Heroku, which offers either US or EU locations for deployment. So there’s a latency of 120-250 ms on every request. A roundtrip to the server for every little thing makes for a bad user experience in this situation.

                    1. 5

                      On the other hand, I’ve encountered plenty of SPAs that do terribly on bad networks. They tend to block/stall until a critical mass of resources have been downloaded, so you get to look at a blank page and spinner for several seconds instead of a progressively loading page. They also tend to download a silly amount of javascript (hundreds of Kb, sometimes Mb). They also get wonky if there are network hiccups and their state falls into some edge-case the programmer didn’t envision (because some APIs loaded but not others)

                      Source: I live in rural, upstate NY and have slow DSL. Half the internet is unbearable to use.

                      1. 1

                        Good point. There is no denying that the web is a horrible kludge of a platform, and your examples illustrate that. It’s very hard to get an application to work well. SPAs are, in a sense, a necessary evil. The “SPA platform” (for lack of a better term) wasn’t designed but evolved piece by ill-fitting piece.

                        Regarding edge cases though: I think that is more of a consequence of additional complexity present in SPAs rather than a drawback specific to them. If you move interaction with external APIs to the backend, it’s just as likely that the backend doesn’t handle all the combinations of responses properly.

                      2. 1

                        Here I would just host my app next to the users (bonus point: initial load is faster too). I agree that if you have to take into account a slow network and you can’t use a CDN, then, it’s gonna be custom solutions (local caching via js mostly).

                        1. 7

                          If we constrain the requirements enough (hosted nearby, CRUD only, no real time updates) then we can of course get a class of applications which don’t benefit from an SPA implementation. I’m not at all sure that this class contains “most” applications however. Nothing I’ve worked on in the last 5 years was in this class, for example.

                          I guess I just don’t like generalisations.

                          1. 1

                            You can always host a backend-only app in multiple regions and you don’t have to restrict yourself to CRUD too.

                            And if you have to, you can always have some pages use javascript for realtime.

                      3. 4

                        I find SPAs interesting, but mostly only if they go to the other extreme: only JS, no backend, to the extent that you can save the webpage offline and run it, because you have the entire app’s source code and required resources. If a backend is going to be obligatorily involved anyway, though…

                      1. 6

                        I’m really confused, is this satire? How does an image appear in a source code file? I’m unable to verify any of these by looking at the project’s source code.

                        1. 6

                          I had to stop and work this out too. It’s a sad reality when you can’t quite work out whether some JavaScript developers really did decide to embed the entire Encyclopaedia Britannica in their library.

                          1. 1

                            Such an article that is not obviously satire (it doesn’t read as such to me) can give a lot of people the entire wrong impression about the projects listed.

                            1. 2

                              On the other hand, if people have trouble figuring out this is satire, maybe it doesn’t even give a wrong impression - as in, yes this is hyperbole but not far from reality so it reasonably approaches reality. So concluding that “this is madness” from such a satirical article is not completely wrong as reality is already “this is very close to madness”.

                          2. 3

                            It is.

                            1. 2

                              The node.js file from babel for reference: https://github.com/babel/babel/blob/master/packages/babel-core/src/api/node.js

                              It’s a really well-done satire that many people will believe is true. Only thing, the twitter like part was the weakest part since you need twitter credentials to “like” stuff.

                              I was hoping for a discussing on how to minimize the dependencies. Maybe agreeing on some meta-package included with all new npm releases containing the most commonly used libraries in one solid and well-integrated library.

                              1. 6

                                The twitter liking came close to making a very good point, but it’s a little opaque. The issue here is not just about bloat and wasted resources and slow startup times, but how well do you understand what it does? This is code that’s running, doing something, but what? Do you trust it?

                                As satire, maybe the weakest part, but probably the most important lesson.

                                1. 2

                                  When I started reading the article I assumed the author had used node’s request library to interact with twitter in the past and had their credentials saved in some kind of global cookie jar.

                                  The Encyclopædia Britannica one was the best though, I can seriously see that happening.

                              1. 4

                                I started 2 months ago hosting for couchsurfing and it’s been a very rewarding experience, forcing me to be more outdoorsy (biking, swimming, bars, karaoke,..).

                                Also I have a huge stack of side projects I come back from time to time while contributing to other open-source projects.

                                1. 1
                                  • Code search for chrome extensions (2 fails with elasticsearch and grep/ag, gonna use postgres)
                                  • Making it easy for people to start their Q&A website (mainly, automating question2answer hosting right now)
                                  • Trying to contribute to Rocket.Chat to add a difference between @all and @user_name notifications
                                  1. 10

                                    Considering a project (and possibly looking for collaborators):

                                    I use stagit1 for personal project hosting (and github as social media but that’s irrelevant to this). I find stagit to be simple and minimal. Does the job. Does one thing and does it well. But I miss issues and PRs. Allowing collaboration from other people is pretty much impossible (asked people to format-patch, anyone?). So I am thinking of creating a “bundle” project which uses stagit and some mailing list software that allows anyone with his own vps and an ip/domain to quickly setup a github like personal project host with patches and discussion over emails with a public mailing list. So people won’t have to “register” to everyone’s site for contributing or opening an issue (which is mostly what keeps people from moving out of github or any other centralized service). They’d just use emails. If we can keep things consistent enough, it could offer the consistency of Github (or other hosts) while getting the decentralization of git back. Add some light css (see http://bettermotherfuckingwebsite.com/) and people wouldn’t find it dull or boring either.

                                    Thoughts? Anyone feels like collaborating? Am I missing something crucial?

                                    Edit: Just realized that this thread might be more about already accomplished/started things and not made up ideas. Apologies if this is offtopic for the thread.

                                    1. 4

                                      It really looks like you’re describing Phabricator here (code reviews, issues, discussions, git hosting, simple design, simple hosting…), you should check that too.

                                      1. 2

                                        +1 phabricator. used it at my old job.

                                      2. 3

                                        don’t hesitate to … ask for help, advice or other guidance

                                        Almost definitely not off topic :-)

                                        1. 2

                                          I’m busy with exams right now, but this is something I’d be interested in following & possibly contributing to in the future :)

                                          1. 2

                                            But I miss issues and PRs

                                            Google has a project where they abuse git-notes as a code review tool. Maybe something similar can be done for issues?

                                            Or maybe we should all just realise that what we really should be using is fossil-scm.

                                            1. 1

                                              That is really clever. It seems like making a new GitHub repo for it will be a necessary evil though ;)

                                              1. 2

                                                Thanks. It is maybe clever eyesight, not a clever idea in itself because git was meant to be used that way only.

                                                Why would this require a GitHub repo?

                                                1. 1

                                                  I feel like that would be a better place than Lobsters to pool ideas and find out who wants to participate.

                                              2. 1

                                                This looks like something I’d find pretty useful for https://eigenstate.org and https://myrlang.org.

                                                At the moment, I mirror my code on github, and use their bugs/issues.

                                                1. 1

                                                  Definitely interested in this. Got a repo for it yet?

                                                1. 5

                                                  The french movement Nuit Debout needs help for their infrastructure, my goal is to add a CAS, i18n and some small optimizations.

                                                  Also working on indexing the source code of 90k chrome extensions.

                                                  1. 3

                                                    By CAS, do you mean “Computer Algebra System” or something else? If it’s “Computer Algebra System”, I am very curious to find out what it has to do with Nuit Debout.

                                                    1. 2

                                                      Nope, Central Authentication Service. See gh issue here: https://github.com/nuitdebout/wordpress/issues/144

                                                  1. 5

                                                    I’m currently planning a software as a service extension to Hypothesis. I’m going to be trying to sort out a bunch of the details this week, though it’s fairly disrupted by travel.

                                                    I’ve also recently switched my development environment from Linux to Windows, so a lot of what I’m actually working on this week is going to be just figuring out how that works and questioning my life choices.

                                                    1. 6

                                                      Linux to Windows, what are doing with your life to make such a crazy move ?

                                                      1. 5

                                                        Mostly getting bored of broken hardware support and punitively slow browser implementations.

                                                        The actual work is mostly still happening on Linux in VMs (currently via Vagrant). Windows is just acting as the host operating system.

                                                        1. 3

                                                          Ah ok, doesn’t look that bad then. I guess you don’t miss the fancy windows managers of linux and the its-open-source-source-and-there-s-no-malwares-preinstalled thing ?

                                                          1. 5

                                                            I guess you don’t miss the fancy windows managers of linux

                                                            I was actually going to be running a Linux VM as a desktop environment because I thought I would (I usually run i3), but it turns out that Windows 10 window management is actually really good (and running graphical VMs is awful).

                                                            and the its-open-source-source-and-there-s-no-malwares-preinstalled thing ?

                                                            I’ve really got very little benefit from it being open source other than the ability to occasionally cargo cult other people’s workarounds to shit that shouldn’t be broken in the first place. (And it being free as in beer of course, but I don’t mind paying for things). In terms of malware, eh. I wouldn’t use a vendor provided version of windows but vanilla windows 10 from a fresh install doesn’t have notably more malware than you get out of Ubuntu and a modern browser anyway.

                                                            1. 1

                                                              That’s true that to protect yourself from tracking it’s many layers but having the OS come with backdoors and heavy tracking is a bit too much for me. Security on linux is a bit a joke so I understand that it’s a comprise on many things. Wanna try win10 windows management now !

                                                      2. 1

                                                        Cygwin may save you from your quandary. Haven’t tried it myself, but I understand it to essentially be “*nix for Windows”.

                                                        1. 2

                                                          Or even better, you can run Bash on Ubuntu on Windows!

                                                          1. 1

                                                            But can I run Blink on Qt on Python on Jupyter on Bash on Ubuntu on Windows?

                                                            1. 1

                                                              Probably? Try it and report back.

                                                          2. 2

                                                            I’m using it a bit (mostly to get a good terminal emulator), but I’m not really convinced it solves the problem at a sufficiently deep level. The approach I’m taking is basically to develop on Windows but not actually try to run code on Windows and it seems to work pretty OK so far.

                                                        1. 1

                                                          Ahh it is a description of settings for Firefox to harden it. From the title I thought this was a change list for Firefox 46 and I got my hopes up about the added plugins :(
                                                          It would be nice if either the creator’s config file itself was in the repo or if a script to set/append to my own config was present.

                                                          1. 4

                                                            I made a PR to fix that, you can copy paste the prefs in user.js in your profile:

                                                            https://github.com/w00w/security/blob/78079d2c5d13300c1b0e7c6b448fdb211edecefa/firefox.md