Wirecutter has been pretty hit-and-miss for me recently. I have found my best product recommendations through a bunch of random blogs who have some particular expertise.
4,246 karma · joined November 29, 2009
https://firshman.com
[ my public key: https://keybase.io/bfirsh; my proof: https://keybase.io/bfirsh/sigs/I2UKihiqAntrGCCwICWwJXcyy9Bt95eBXaBlml8VkuQ ]
Wirecutter has been pretty hit-and-miss for me recently. I have found my best product recommendations through a bunch of random blogs who have some particular expertise.
There were several subnets at the school, each with its own gateway. I remember having to set up live CDs in several computer labs to cover each of the subnets.
These were the days when nothing had SSL, so you could just intercept and rewrite traffic!
My only requirement was: do no actual damage
It was implemented as a Debian live CD that you could drop into any school computer. It would boot up, then Ettercap would MITM the whole network by spoofing the router. It routed all HTTP traffic via Squid and a custom ICAP server that did the actual rewriting. If you removed the live CDs, the network just went back to normal within a couple of minutes.
Routing the whole school's network through one old Pentium machine wouldn't work though, so I figured out a way of doing distributed load balancing: it would do the ARP spoofing slowly and randomly. So, as you added more machines, it would just magically balance between them.
It worked great for about an hour then whole network mysteriously stopped working for the rest of the day. I left all the live CDs in the computers as a calling card.
Sorry, school network admins.
This got acquired by Docker and became Docker Compose. Swarm was the attempt at making clustering work.
It makes sense to me that some fruits only fruit in summer when there is enough energy, and some that require less energy fruit all year round (e.g. apples).
But why does citrus only fruit in the winter? Maybe it exploiting the fact that there aren’t any other fruits at that time, so hungry cold animals will eat them at a greater rate than if they were competing with all the other summer fruits?
Turns out it’s kind of possible if you cover a huge van with solar panels and have them extend out to make a larger surface area. And, are very patient. (One day of driving, two days of charging, or whatever.)
I’m glad I did it on a bicycle rather than a motorbike. There’s something more human-scale and less intimidating about it.
Well, in relatively populated places like Europe and India at least. I imagine I might feel differently if I cycled through the empty bits of the US or Kazakhstan.
I felt very safe in terms of crime. Subjectively I felt safe, but also objectively crime rates are low in India, I think. (Obviously hard to compare crime rates and I forget the exact metric I am basing this off.)
Even though my bike and laptop were probably a year's salary for somebody there, I never felt like it or myself were in danger.
Toward the end of the trip I remember being chased by a scooter honking at me and waving me down. He handed me my wallet. Turned out I had left the zipper on my bag open and my wallet had fallen out. He found it on the ground, saw me in the distance, and chased after me to hand it back. I had maybe $100 in cash in there (which is like $1000 adjusting for purchasing power) and of course it was all there.
Everyone in India is so kind and welcoming. There is no concept of personal space or privacy, but that also means everybody is your friend.
I had spent ~10 years working in tech so I had some savings. Contract work also helped.
Not sure what the total cost was exactly, but the cycling part was cheap. It's ridiculously cheap if you're in Asia or cheaper parts of Europe (Greece, eastern Europe, etc). It got more expensive when I bought a van...
Airbnbs (the kind where you stay in somebody's spare room, not a whole place to yourself) are plentiful and cheap outside major cities, and mean you get to meet locals. I had so many good experiences doing that. More often than not I would book an Airbnb in the afternoon for that night, when I had figured out how far I would get that day.
Homestays are abundant and cheap in India and other parts of Asia. $10 for dinner/bed/breakfast. I didn't camp in India once because they were so cheap and abundant -- I'd rather eat delicious food and meet a local family.
Wild camping is much more of a normal thing outside of the US, even if it is technically not allowed. You just find somewhere discreet. In Europe, I was discreet but always welcomed if somebody found me. In Asia nobody gives a shit, you can just do what you like.
1. Go via land. You see everything in between all the places you should see as a tourist. You immerse yourself in how a place actually feels. You meet people who aren’t just trying to extract money from you. I cycled, because I like cycling, but any form of transport works.
2. My algorithm was something like “Go east. Stay somewhere if it’s interesting, until you get bored. Continue going east.” I didn’t have a fixed itinerary, but I did have some framework.
That was the basis of it, I think. I cycled from London to Italy, stopped for a while in Italy, cycled on to Greece, then fell in love (with the place and somebody in particular). I met some of my best friends, worked on side projects, volunteered for charities, and ended up staying there for several months. I skipped forward to India on a plane, cycled across India, then returned back to Greece.
My partner in Greece wanted to visit the Middle East and Central Asia, but she wasn’t quite as excited about cycling through the desert as I was, so we bought a van and drove — to Central Asia, and everything in between.
My framework worked extraordinarily well. If I have one regret, I think it was not making an effort to interact with more people. You do that a lot more naturally when travelling by land, but you still need to put in effort to make it happen.
For example, I was up late in a bar in an Italian village, and met one of the locals. It was a long cycle ride back to the place I was staying so he offered me his spare room. Turns out he lived with his parents and the next day his elderly Italian mother cooked us pasta for lunch. Possibly one of the best meals of my life.
I wish I had done more of that. Just hanging out in bars and making friends. And not tourist bars — real bars. Knowing the local language better would probably help.
So, I left and they got nothing. I doubt they're going to rent it out again for a while.
There are ways of exporting MathML within that schema, I think.
So, funnily, as part of this, NIST maintain a LaTeX to XML converter.[0] It's a pretty complete LaTeX runtime. (Yes, runtime -- TeX is a programming language, not a markup language!)
This is the thing that powers arXiv Vanity[1] and other academic publishing projects.
I just find it quite amusing that the US Government maintains a LaTeX runtime written in Perl.
But unfortunately, as you say, most of the pluggable tools are not very good and/or not mature enough.
Here's our attempt at model storage, experiment tracking, and software heritage: https://replicate.ai/
For interactive dev environments, Colab, Deepnote, and Streamlit are all great.
For deploying to production, Cortex mentioned in the post is great.
All are a work in progress, but I think we'll soon have a really powerful ecosystem of tools.
We touch on metaphors in this section: https://clig.dev/#conversation-as-the-norm
The CLI is the opposite of the Mac in a lot of ways -- reality instead of metaphors, remember and type instead of see and point, make it a conversation, and so on.
We also didn't mean not to use man pages at all. We just find more people use the built-in help and web pages, so if you have limited time/resources, it's better spent on those things.
In retrospect, perhaps it was worded a bit strongly. I am enjoying the debate, though. The meta point, and part of the reason for this document to exist, is that perhaps it's a good idea to question our 30-year-old traditions and see if we can come up with better ways of doing things. This seems to have got people talking again. :)
We’re Ben, Aanand, Carl, Eva, and Mark, and we made the Command Line Interface Guidelines.
Earlier this year, I was working on the Replicate CLI [0]. I had previously worked on Docker so I had a bunch of accumulated knowledge about what makes a good CLI, but I wanted to make Replicate really good, so I looked for some design guides or best practices. Turns out, nothing substantial had been published since the 1980s.
On this search I found a superb blog post by Carl about CLI naming [1]. He must be the only person in the world who cares about CLI design and is actually a good writer, so we teamed up. We also were joined by Aanand, who did loads of work on the Docker CLIs; Eva, who is a technical writer, to turn our scrappy ideas into a real piece of writing; and Mark, who typeset it and made a super design.
We love the CLI, but so much of it is a mess and hard to use. This is our attempt to make the CLI a better place. If you’re making a tool, we hope this is useful for you, and would love to hear your feedback.
Some of it is a bit opinionated, so feel free to challenge our ideas here or on GitHub! [2] We’ve also got a Discord server if you want to talk CLI design. [3]
[1] https://smallstep.com/blog/the-poetics-of-cli-command-names/