DJI Mavic Pro – My Latest Drone

Posted in default on October 17th, 2025 at 11:48:51

I bought another drone.

Those who know me best will look at me a bit oddly for this: “Wait, seriously? Don’t you have a bunch of drones already? Didn’t you buy like 6 drones from someone at one point?”

Well, yeah, I did. But none of them fly right now. And the requirements to fix them were something I kept meaning to get around to

Hawk vs. Ads: My personal opinion on monetization via advertising

Posted in default on October 17th, 2025 at 11:47:59

I have, for many years, had a strong feeling against using advertisements on my content in order to make money.

On LiveJournal, on Flickr, and on other websites that offer me the option, I have long done my best to minimize the ads that other people have to suffer through.

Learning to Blend: Poking at Blender

Posted in default on October 17th, 2025 at 11:47:01

One of the tools that I’ve seen many times, but never actually figured out how to use, is blender. Blender is the only 3d editor that I’ve ever really seen — I know there are others, like 3D Studio, and the like, but they cost the big bucks, and as a hobbyist, Blender is much more style.

The reason I’ve never actually figured blender out isn’t for lack of trying. I’ve often wanted to make just a minor edit to something in a 3d model, especially since I got the 3d printer: To edit or remove chunks of something I don’t need, to remove one piece of a multiple piece object, etc. The reason I’ve never figured out Blender is that it works completely differently from almost every other piece of software I’ve ever worked with.

While working on my next 3D model — a print of Kresge Auditorium — I had a problem: The day that I flew over the building, there was an event going on outside, with a tent and archways covering one of the doorways. This meant that my image had holes in the front, which were getting in the way of the 3d printer correctly slicing the model.

Screen Shot 2014-09-21 at 10.38.01 AM 640

In the past, I’ve just let these things be — but this model was relatively simple, and had only this one really significant problem: I figured it was as good of a chance as any to learn Blender.

Posted in default on October 17th, 2025 at 11:25:24

Mastodon is Pretty Similar To Twitter
If you are a Twitter user, the overall Mastodon experience will feel pretty familiar to you. It’s a microblogging platform. You have a box to write words in; and a timeline of words you read. You have a notifications tab. You can reply to the posts other people have made, and you can favorite or boost (retweet) things. The sum total of the day to day experience is likely to not be hugely different than using Twitter.
Mastodon Accounts Are Not Segregated By Topic
There is a common misunderstanding that Mastodon accounts are segregated by topic. They are not. The content you can see is not separated based on the “instance” you are on: you can (and will!) follow people from a wide mix of servers, and content from other servers can be seen in your timeline (and even from people you don’t follow, you will see them as “boosts”/retweets). Some things this means:
You are not expected to post only about a specific topic based on the instance/server you are on. The “identity” attached to a server has approximately the same weight on content expectations as your Twitter username.
You do not need to worry that your server will limit the content that you see.
You can follow anyone, from any server. They can follow you, regardless of what server you’re on. You are not entering a silo.

Many people and UIs encourage the use of Mastodon servers that are topic-based. This offers a little value, in the same way that getting added to a Twitter Group DM of people who care about a topic does: that is, it can be a little bit of an identity helper, and let you find some people to connect with more easily, but largely doesn’t impact your day to day experience. However, you do still have to choose a server to be on.
You should choose a Mastodon instance based on trust
Because you can see the content of anyone from any server, and they can see the content from yours, the “topic” of the server is less important than trusting the people who are running it. There are a handful of different elements of trust that matter:
Other individuals or (or entire servers) can block an entire server from their feeds. This means that you don’t want to be on a server that is seen as being a “bad actor” in the community. Check the moderation policies and rules for the server to make sure that they indicate admins who are thoughtful about moderating content.
Is the server going to be up 6 days from now? 6 weeks from now? 6 months from now? 6 years from now? Mastodon is experiencing a serious influx of users; are your instance admins relatively capable (or willing to ask for help)? Are they prepared to be around to help fix the server if it goes down - or are you okay with it going down for a weekend, and know it will come back later?
Do you trust them to take appropriate care with your account? Things like “messages limited to followers” (or “only visible to those tagged”, the equivalent of “Direct” messages) are visible to server admins, as are details like your email address. Ensure your server is run by folks who are not going to abuse that access.

It’s Mostly Okay To Move Later
Mastodon instances have a feature that lets you move your followers from one account to another. That means that I was able to move my followers from my @crschmidt@mastodon.social account account to my @crschmidt@better.boston account. You can also export and re-import the list of people you follow, so you can move the people you follow as well. If you make a mistake in where you set up camp, and want to move, your social graph can come with you.
Your post content, on the other hand, will remain in the old location. So long as the server stays up, this probably isn’t a huge deal–most people aren’t going to reply to old content anyway, and it will still be accessible. But it does mean that people who reply to things I wrote on Mastodon before this month will be replying to “me” in a way I will never see. On the other hand, I’ve been posting on Twitter for 15 years, and the number of times when I get interactions on posts older than about two weeks is about twice a month, so this isn’t a huge problem.
In general, this means that moving does not mean abandoning your network; but will leave your posts behind. Given how microblogging works, this makes moving relatively low cost.
Does Local Instance Matter At All?
There are a few things that which server you’re on does influence.
Each instance has a “local” feed. This is a handy way to get started finding some new people. On smaller instances, this will be more meaningful than on larger instances.
The content that shows up in search will be limited to content that has made it to your instance for some reason or another. This means that things like searches for hashtags will be across “the content on the local server, and any content that anyone from the local server follows.”
Mastodon does not have a lot of experience to scaling to massive servers. Joining an instance with 250,000 active users is likely to be a bad experience. Instances with 1,000–20,000 active users have a much longer history and are likely practical.

The first of these is a feature: It’s a nice local discovery tool. The second of these is a limitation: it would be better if search was more federated and you didn’t get a different view of search from each server. The last of these is just a veiled warning to not join mastodon.social (or whatever the next “big instance” that comes after it) is.
Twitter Features You May Miss
Mastodon doesn’t have quote-tweeting. Usually people instead encourage for you to create a reply (possibly including some more context, since the original post won’t be as visible) and then boost your own reply.
Mastodon doesn’t have full-text search. Finding “That tweet I saw go by a couple days ago” will likely be impossible. Aggressive use of the bookmark feature may help you somewhat here.
Mastodon only has the “Latest” feed equivalent from Twitter, not the “Home” / algorithmic feed that is the default. As a regular use of both on Twitter, I think that people sometimes overestimate both the positive and negative impacts of algorithmic feeds. It does mean that your content will be influenced more heavily by who you follow, and what time of day you’re reading, and you are likely to see very popular content (with many boosts) more often than on Twitter.
Likes are not used to surface content to other people in your network, so if you want other people to see something, boost it, rather than liking it.
Engagement statistics on posts are only accurate on the “home” instance; that is, you need to open the post in a new webpage in order to actually see the stats. You will see accurate stats on your own posts, but don’t assume that you are seeing a full list of “who has boosted / faved this post”; the “ratio” that people talk about on Twitter largely isn’t visible by default on Mastodon.
Direct messaging doesn’t really exist as a first class feature. You can create a post which is limited to visibility of “people mentioned”. It is just a mention that only a limited number of people can see. Some UIs (including the main Mastodon web UI) surface this in a tab that says “Direct Messages”. But it’s not similar to most other DM platforms. There is no “Group Chat” equivalent.
Things You May Want To Know
People use hashtags more often. Hashtags are an explicit search signal: If you want something to be visible to other people in search, tagging it with a hashtag will be more likely to let them find it. However, most people don’t use search to find other things on Twitter, and they likely aren’t going to on Mastodon either; building up a stronger social network of people to share content is much more likely to be effective. “I hear that you’re supposed to use hashtags for things to be found here” is often said; I consider that to largely be a misunderstanding of the most likely way for people to discover content.
Hosting servers is not free. Twitter, overall, makes about $50/year/user in the US from advertising. Hosting Mastodon is more technically involved, and done at smaller scale, which means higher cost per user. Self-hosting an instance as a small user would probably cost you about $5-$10/month. While most servers at the moment are done on a volunteer basis in spare time and resources, you should look to your instance’s server pages and see if there are ways you can contribute, if you’re able.
Reporting posts will go to instance admins and moderators, who are largely volunteers; there is no “Mastodon moderators”, just other people like your volunteer instance admins who are going to deal with them.
You can block posts from an entire instance. Since instances are often grouped by interest, topic, or social community, this can be useful as a tool: while not every bot will be on the “botsin.space” instance, the majority of posts from that instance will be from bots, so you can block it rather than each account from that server individually.
Mastodon is still an early adopter community, and the growth in the past 2 months is drastically changing it. What this means is that there are still a lot of things that are evolving rapidly. The community has existed for more than 5 years, and there are some norms that existed for 4.5 years that are now evolving with a massive influx of new users.
Because Mastodon is an early adopter community that previously had a larger contingent of marginalized folks, there are some norms that focus those communities more, that it would be good to adhere to. These include the use of the “content warning”/content note feature (which hides words/photos behind a click-through; similar to “spoiler tagging” on some other platforms); doing more work to include image descriptions (which exist on Twitter, but are often skipped; try not to do that); and use of #TitleCaseHashTags, which make reading hashtags easier for screen readers. (Basically, because the community is still small, people are kinder than they will be as the community grows. Be one of the people making it more kind, not less.)

It’s Time To Buy A Bike

Posted in default on July 12th, 2019 at 07:12:01

I’ve decided I should buy a bike.

I’ve been riding the Blue Bikes around Cambridge for a little more than a month — partially in response to the meltdown of the T — and I’ve come to the conclusion that biking in Cambridge is sufficiently useful and sufficiently safe that it’s a means of transport I should continue trying to use for some trips.

My intent is that this will be used primarily for city riding, with a possibility of using it on well-maintained recreational trails, but I’m not looking for a mountain bike or anything.

Ideally, I want something light, but I probably want multiple gears — Cambridge is largely flat, but biking through East Cambridge without gears would be a challenge. I have found that the Blue Bikes typically aren’t geared *high* enough: I often find myself looking for more power and not being able to get it. It’s like finding the perfect 슬롯 사이트 when you’re into online casinos and esports; you need the right features to enhance your experience, whether it’s bonuses, game availability, or payment methods. Similarly, the right bike should cater to my needs for a smooth and efficient ride, with the right gearing system to match the city’s varied demands.

I’m likely looking for used rather than brand new — I don’t need anything fancy. Based on my positive experiences with the Blue Bikes, a step through bike of some kind seems appropriate.

I’m not looking for heavy cargo capacity: I still have a car, and am still likely to use that for anything resembling heavy lifting. This will be for transporting me and nothing else that I can’t fit in a backpack.

Storage at work will likely be in the company bike cage; storage at home will likely be locked up in the backyard.

  1. What other answers to questions should I have?
  2. Any concrete suggestions on what kind of bike this turns into?
  3. [Boston-area] Where should I get it?

!!con Trip Report: Day One

Posted in Technology on May 12th, 2019 at 08:13:55

Yesterday, I spent the day at !!con (“bangbangcon”), a conference which focuses on “The joy, excitement, and surprise of computing”. The experience was everything I hoped it would be and more!

As someone who is enthused and energized by the excitement and joy of others, !!con is a mecca. The 10-minute talks have one key requirement: The talk title must include an exclamation point! (The must also be “related to computing” and “be about something you think is interesting and cool!” — all of which play a role in what talks are selected.) These requirements are core to the premise of the con: that talks should be about excitement, and it shows in every aspect of the program that is selected. From body modification to unusual game development experiences, from beginners learning about brand new technology to long-time experts exploring and sharing esoteric knowledge about how something works, the talks were all formed around the joy of discovery.

In the past, I’ve experienced !!con from a distance via the tweets of Liz Fong-Jones. Liz has done an excellent job at pulling the high points from various conferences for years, and I have seen !!con tweets go by and been saddened that I wasn’t aware of it early enough to find a way to attend. Thankfully, this year — due to a timely reminder from a coworker — I was able to get to the event. Being here in person is even more valuable because the excitement over these things is contagious, and is energizing for me all on its own.

Compared to the traditional tech conference, !!con has clearly seriously invested in and succeeded in creating a more welcoming and supportive environment where all kinds of folks feel invited and included. It’s visible from almost the first moment you walk in that this is not the audience of your typical tech conference. It’s eye opening what an attempt to create an inclusive environment can achieve. Elements like anonymized review process, a focus on first time speakers, and encouraging anyone that “finds that people like you are underrepresented at programming conferences” to apply have clearly paid off. (Of course, this is only successful because the organizing committee of the conference has clearly done work all over to make this happen, and has a demonstrated history of getting it right, as far as I can tell.) Both speakers and attendees feature a much more diverse mix, both in racial and gender diversity, than I have experienced at any tech event before this.

Another element that is a joy is the level of accessibility to the conference. This is my first event with live captioning, and as someone who has recently come to realize the extent to which I require captions to process information well, it is a joy. While I am not hard of hearing, I suffer a lot from difficulty processing accents and certain vocal ranges, as well as suffering to a certain extent from symptoms of ADHD that make some forms of processing more difficult. The captions are simply an incredible tool towards making the content more accessible, and I’m definitely committed to demanding this level of accessibility from future events I participate in.

For my own participation, yesterday I was happy to act as a facilitator of one of the breakout/”unconference” sessions: “Unions: Why You Should Have One.” I didn’t have an explicit goal, but with the broader worker solidarity movement afoot in tech, I felt like providing a space for people to chat about it was worthwhile. To my pleasant surprise, we packed the room: we had more than 30 people who came in and participated, in every stage of the process from “This seems interesting” to folks who are well down the path towards building solidarity among their workforce and building on it. Also, since I’m in a town far from home, I came into this conference without recognizing a lot of faces, and now I’ve made some new friends!

If I were to try to highlight all the talks I loved yesterday, I would just have to list every single one: Every talk had some aspect I enjoyed. That said, I can make a few special call-outs to ones that really stick out to me:

Kate Beard‘s “Let’s build a live chat! 👍from the 1800s (?!) 🤔using modern web technology!!! 😮” combined an amazing history of the telegraph — how it changed communications worldwide — with a desire to learn how to use the Web Audio API. The result is Morse Chat: An application that you can use to chat with your friends in Morse Code. Kate has just recently finished a 4-month coding boot camp, and is now working at the Financial Times, and was clearly excited to put those skills to work in a fun personal project to learn more about how to use web audio and websockets — and created a fun and nifty app in the process. Kate’s excitement over the app was contagious, and I absolutely loved it.

Each section of the con had a theme running through the three to four talks that were grouped together, and the game development section was definitely a big draw to me. The practical exploration of Game Feel from Ayla provided some awesome demos of what you can do (and can’t do) to make games feel better, and Sophie’s use of a hardware build to cheat at Pokemon was terrific as well — but what I really loved was Em‘s terrific story of creating a game that’s fun to play using a stationary bike.

Em has a history of creating games with unusual interactive surfaces, and recognizes that how you interact with something changes how you experience it. When they bought a bluetooth enabled stationary bike setup, they found that the existing game UI that came with it was insufficiently motivating, and decided to see what they could do to build a better game. They created a prototype application that envisions you as an UberEats style bike messenger: someone who picks up meals and delivers them to clients. Initially, with only a single input — pedal or not pedal — creating a compelling game experience turned out to be hard. The part of this talk that was most interesting to me was the process — during prototyping — where an attempt to add an additional input led them. The plan was to use turning the handlebars as a way of indicating turns. When stymied by the difficulty of combining this notion with triggering re-routing in commercial mapping UIs like Google Maps, Em found it was a development experience that wasn’t “going with the grain”, and took a step back.

After taking a step back, they realized there was a different approach to take: instead of fighting mapping APIs to implement turning down different streets, instead, they could simply give the player a different set of choices: set up multiple food pick ups and drop offs, and turn the game into a more traditional resource conservation/collection game. Now, the choices were around “Which orders am I going to pick up and drop off, and in what order” — creating a game out of solving a modified version of the travelling salesman problem. With that in mind, you create a game that has a compelling loop, without needing to fight against the development style encouraged by your tools. This step into the perspective of someone prototyping a game was absolutely one of my favorite points of the con.

In the health-related track, I loved Sarah‘s talk, “I Built an Artificial Pancreas!” While I’m not personally a health hacker/body mod type person, I have a lot of respect for those like Sarah who are. But the most interesting part of the whole thing to me was how much more effective her insulin pump is at regulating her blood sugar now: With open source software and open hardware, she was able to pull her actual values directly in line with her target 90% of the time, when before that was almost never the case. Open source software for healthier living? That’s a tagline I can get behind.

All in all, this conference is lovely. The community, the technology, the information and the sense of pure joy from the participants and the speakers are hard to describe, and I’m happy I got the chance to make it here.

Onward, to day two!

Building a Moderately Functional Web App

Posted in Python, Web Publishing on October 9th, 2018 at 07:07:56

This weekend, I built a moderately functional web app. I’ve done this before, of course — I used to work in web development back in The Before Times — but this is only the second app I’ve built in 5-6 years, and it included some new things I haven’t done before! So, in no particular order, here are some things I learned. (Many of these things may have been true for a decade or more; that doesn’t mean that I didn’t just learn them!)

  • If you intend to do anything with media queries, it seems that the common knowledge is that you *must* include a specific viewport meta tag: <meta name="viewport" content="width=device-width, initial-scale=1.0"/>. Without this, things work fine on desktop browsers, but fail on mobile browsers. This does not make sense to me, but there it is. (Thankfully, they at least also fail in Chrome’s mobile device inspector mode, so it’s actually possible to debug.)
  • mod_wsgi has a python-home directive that allows you to specify the virtualenv that you would like to use to run your particular application. This is useful if you are using virtualenv to package up your dependencies; it means that you don’t have to mess about with weird path includes in order to get your virtualenv working in your Apache webserver.
  • localStorage seems to work by default across major browsers at this point. This means that I was able to store information locally without any magical … anything. For minimizing server-side storage entirely, this seems cool and good to know. localStorage is available in the default Javascript scope, and has two functions: getItem('key') and setItem('key', 'value').
  • If you have a div with contenteditable set, by default it appears to have a height in Safari and Chrome, but not in Firefox; so make sure you set a min-height on the element in Firefox.
  • CSS flexbox support has been available in every major browser for years. This means that you can actually horizontally and vertically position elements without using tables. This is amazing to me. (In fact, out of desparation, I briefly attempted to use a <table>, only to find it screwed up my layout more — and that CSS flexbox was *easier* than using a table for what I wanted.) This is pretty amazing to me.
  • If you are using a contenteditable field, then the following will ensure that when you paste into the field, it is pasted using plain text. (This is necessary in Safari; not in Chrome, not sure about other browsers.) I haven’t thoroughly tested how cross-platform this snippet is.

    document.getElementById('input').addEventListener("paste", function(e) {
    // cancel paste
    e.preventDefault();

    // get text representation of clipboard
    var text = (event.originalEvent || event).clipboardData.getData('text/plain');

    // insert text manually
    document.execCommand("insertHTML", false, text);
    });

  • pusher.com is a quick way to get support for a moderate size of websocket connections (100 active connections; 200,000 daily messages) supported by a wide variety of push + receive client libraries, with almost no work. It honestly feels a little bit like magic; as someone who had been putting things off specifically because of the pain that is *either* polling or running a websocket service, this was really quite nice to see. Also supports posting out received messages via webhooks for clients that might want that instead of websockets. I expect that if I ever reach that level of scale, I’ll probably just set up my own websocket server rather than pay the $50/month for the next tier, but for a getting started, this was really useful. I started with this guide on building a chat app in Javascript and found that it was easy to get started with and to modify, since it only has around 30-50 lines of code.
  • I probably need to bite the bullet and start moving towards Python3, even though I don’t really care about it. This is annoying as my gap of 3-5 years since I built new apps has left my server environments atrophied and weak.
  • People really prefer a “dark” theme to a light theme in the social spaces that I run in. (I’m surprised that Facebook doesn’t have a dark mode yet.)
  • Modern browsers continue to change constraints — on things like autoplaying videos, third-party cookie restrictions — in ways that are likely good for privacy and user experience, but break older apps without much way to fix it and with user control over those changes minimized. Old apps that worked fine are now non-functional because of these restrictions.
  • If you try to copy a virtualenv from a different machine, you get *weird* behaviors. Also, if you’re creating a virtualenv, the first thing you want to do is probably upgrade pip. (Turns out that when the pip you’re using doesn’t support modern dependency descriptors, you also get really weird failure modes!)
  • I really miss the handiness of Google’s auto-formatting facilities when writing code. Everything I’ve written this weekend is indented poorly, and it’s frustrating.

Anyway, starting around midnight on Sunday until early Monday morning, I built myself an app; it includes synchronized viewing of YouTube playlists, plus a completely built-from-scratch chat app that is moderately functional and improves in a lot of ways over YouTube chat for the use case I have. I built media queries that let the UI actually work on a mobile device, and it actually looks halfway decent. I didn’t have to use much in the way of browser-specific hacks (modulo comment on min-height in Firefox).

That’s a pretty cool experience.

Moulin Rouge: The Musical – A Sensual Ravishment

Posted in default on August 12th, 2018 at 12:09:32

When describing the story-within-a-story of the original Moulin Rouge, a character describes it as “a magnificent, opulent, tremendous, stupendous, gargantuan, bedazzlement” — a series of adjectives that apply equally well to the stage adaptation currently playing at the Emerson Colonial Theater in Boston.

Moulin Rouge set at Emerson Colonial Theater

The show lives up to the standards set by the 2001 movie musical, engaging in a series of back to back musical mash-ups while the ensemble cast takes the stage, moving in more directions than can be counted at any given time. From the opening scenes, the audience is subjected to an overwhelming collection of bright lights, colorful costumes, and incredible choreography, moving the two dozen or so cast members around the stage in coordination.

The storyline wasn’t particularly original in 2001, and there’s nothing much changed in the musical adaptation: Christian [Aaron Tveit] is an aspiring songwriter from Ohio, come to seek love in the Parisian streets of Montmartre. After meeting Toulouse-Lautrec [Sahr Ngaujah], he heads to the Moulin Rouge to meet the lovely Satine [Karen Olivo], and convince her to help them put on a show at the Moulin Rouge. Together, they convince the club’s owner, Harold Zidler [Danny Burstein] and their financier, The Duke, who seeks Satine’s sole affections. Love triangle ensues, the show must go on, etc. etc.

The musical numbers are stunning, and performed amazingly well by the characters. Christian and Satine both provided amazing range to the eclectic mix of songs, from the Sound of Music to Elvis to Gaga. While a wide range the hits are brought back from the movie, a number of more modern tunes are brought in as well; adaptations of everything from Adele to Lady Gaga to the White Stripes. Fans of the original will find plenty of nostalgic callbacks, but the surprise mixing in of newer tracks clearly provided a new audience with plenty to look forward to. Finding a transition from spoken word or previously used track to a remix of an unexpected song often provided a chuckle of realization from the audience. Even old favorites, like the “Diamonds are a Girl’s Best Friend” mix brought forward from the movie, are updated with new tracks: in this case, bringing in additional notes from Beyonce’s “Single Ladies”. And the original ensemble numbers were among my favorite parts of the show: the “Bad Romance” flavored piece at the beginning of Act 2 (featuring not just Gaga, but a mix of 4 others, including Britney Spears “Toxic”) was an amazing set of visuals, and started Act 2 off with a bang.

Zidler, as our showman for the evening, leads us through much of the story, and plays more of a comic role than he did in the original. While in 2002 or 2003 I might have found this upsetting — my romantic streak let me put entirely too much importance in the Bohemian ideals espoused by the movie to let it be spoiled by explicit comedy — I felt it was a perfect fit. (The reality is that the story behind Moulin Rouge is slightly more vapid than I really would have granted in the past.) The note of comedy plays out throughout the show, and I think gives the production a different taste that makes it more enjoyable for the stage production.

The sets were a revelation, a testament to the theatrical magic that can make one truly know your real home value in terms of creative space and artistic expression. Even without being a theater expert, the visuals were astounding, employing optical illusions that lent an unexpected depth to the stage production. The nostalgia was palpable, with the dressing room inside an elephant providing many familiar features from the movie, including the heart-shaped window offering a quaint view of Parisian streets; the apartment in Montmartre was equally immersive, its decor perfectly in tune with its narrative purpose. And it seems my impressions align with the professionals; as a critic in the Boston Globe put it, “The production is as slick as it gets … Derek McLane’s sets are extravagant, ever-changing with a whimsical appearance of the Eiffel Tower”—a sentiment that confirms the shared appreciation of this visual feast.

The costumes were beautiful and ever changing, but all provided a sexual energy, matched by the choreography of the show. From the pre-show opening, with corseted dancers engaged in sensual contact as cage dancers, to the all-male can-can line at the very end, you’re intended to be overwhelmed by the visuals presented.

The show was spectacular, and as Zidler predicted years ago: I came out of the show “dumb with wonderment”. With enough callbacks to the source material to cover all the nostalgia I need, while maintaining a taste of new mixed in throughout, I came away overwhelmingly pleased with the experience. As an entrée into the world of pre-Broadway musicals, I couldn’t be happier with this show.

Moulin Rouge runs at the Emerson Colonial theater through August 19th.

Where to Post? The Dilemma of Building Connections in the Modern Web

Posted in LiveJournal, Web Publishing on August 2nd, 2018 at 02:10:16

So, I have something I’d like to write a series of posts about. They would be longish-form text with a few images tossed in.

In the old days, I would have just set up a LiveJournal (now: Dreamwidth) account, and posted to that. I might have sent links around to my existing friends, though in this case, my imagined target audience is different than my existing friend group, so I might not have cross-posted links.

But the thing is: Part of the reason I want to write is because I want people to find the content and respond. And I’m no longer sure how to build up those connections — and so I imagine myself leaning on the crutch of recommendations algorithms. “Oh, I should make a Facebook page!”, I think — because if it’s on Facebook, maybe people who I don’t tell about it directly will know.

But of course, that’s mostly bullshit: Absent bringing a starting audience with you, most social media platforms don’t provide you a magic discovery mechanism where you’ll be found by others; there really is no difference between any of these platforms on that front.

I run through this all the time: Do I go with tumblr? With Facebook? With Medium? With Dreamwidth? Where am I going to get the most shares? Is this content better for one platform than another? Etc. etc.

I’m not sure what changed. Is this something that changed in me: Do I feel more intimidated and scared to reach out to new people? Am I unwilling to do the work and engage meaningfully with relevant communities?

Is it something that changed in the world? Is it harder to get people to click through to a link that isn’t on Facebook these days? To read the article, rather than a 27 tweet long thread?

I don’t know how I got to where I am, but I do know this: There are a number of things over the years where I have tried to write them and never felt like I found a good home for them. I wanted some feedback, some sense of connection from them… and never came to the conclusion on where I might get it from.

It feels like a step back from where I was a decade ago, and I wish I knew how to move on from it.

RAICES: Why a Bond Fund was a Great Fit For Massive Donations

Posted in default on July 22nd, 2018 at 12:28:29

Over social media over the past several weeks, I have noticed a lot of people upset about RAICES donations being used to fund the bonds of many detained refugees incarcerated in ICE facilities. I think that this frustration — while understandable — is fundamentally flawed, and wanted to share why I think that what RAICES is doing is exactly what they should be doing: that is, paying bonds directly to DHS is not some turnaround or publicity stunt, but rather, this is RAICES doing exactly what they said they would do.

Some background: RAICES is an immigrant advocacy legal org. They work with local lawyers to help provide legal support for immigrants, and in that role they provide a number of services, including paying bonds for some of those they work with. Prior to this year, they were relatively small — managing a few hundred thousand in annual donations — but recently saw a huge uptick in donations as the result of a number of highly visible public donations campaigns. In total, they received more than 20 million in donations in a period of just weeks — an absolutely enormous amount of money for a small organization like theirs to manage.

If RAICES was not a bond fund, these funds would languish for a *long time*, because managing millions of dollars of funds — something like 20x their previous operating budget! — is logistically a nightmare. (For example, a hurricane-related fund last year received $35M in funds targeted for use helping hurricane victims recover in Texas … and have managed to spend only $12M of it, with $23M languishing in an account that practically speaking may never be sent.) Most organizations are not set up to receive this much money! But thankfully, we all got lucky that this *one* singled out organization is so goddamn perfect for a ton of cash: paying bonds for people is literally the best way to ensure that they are reunited with their families.

Bonds are not actual money that goes to the government to keep. That is, the money paid to DHS does not somehow line the coffers of those imprisoning immigrants permanently: instead, the bond is a surety to make sure that the person in question gets to court, and is repaid by the court once they show up. For refugee cases, something like 97% of these cases do. And once they do that money goes back to RAICES… which can use it again for more immigrants.

The campaign page on Facebook was very clear about the intent: Quoting from a Guardian article on the topic, “The campaign page said all money raised was going to “directly fund the bond to get parents out of detention and reunited with their children while they await court proceedings””. The campaign was propagated all over Facebook, and was also advertised on other social media websites, including Youtube (with the help of websites like themarketingheaven.com). But unfortunately, the campaign wasn’t received well by the public.

Slate reviewed this effort in the midst of this massive amount of fundraising: Why Even Viral-Fundraising Skeptics Can Feel Good About Donating to RAICES. The article called this out as an absolutely lucky break in our furor of fundraising: This bond fund will not only serve to immediately get thousands of parents out of ICE detention and reunited with children, but this bond fund will likely serve to help ensure that not just the current batch of people, but thousands more every 3-6 months will be able to be reunited with family, not having to spend time in ICE facilities completely unnecessarily. And that’s the reason why I continued to encourage people to give money to them.

I’m sorry some people didn’t read the campaign they were giving money to, or felt tricked, but this bond fund is just an extremely excellent use of this money, which is going to help detained immigrants for years to come. We realistically couldn’t have found a better way to directly help those affected by such a program than this.