Category: Life

Every other post.

  • Accessible Programming, Part Four

    Accessible Programming, Part Four

    I’ve written three pieces now on a fictitious visual programming language. The goal was to tap into years of user experience work to come up with an approach that would significantly reduce the learning curve associated with programming. As I wrote in 2012:

    Make this easy enough, and you might tap into an audience of “casual programmers” that use this to assist them in their daily doings. No one’s come up with a successful programming analogue to the likes of Microsoft Access that appeals to the likes of secretaries and payroll officers. There’s room for one.

    I’ve come to realize that my approach was flawed because I was getting the audience wrong. I wanted this to be for the everyday consumer, but was building it for programmers. I was conjuring a tool (the programming environment) that then made the tools (programs) that then accomplished a desired task. Only programmers care about making tools that do things. The average person just wants to do things.

    So the idea then becomes to provide an environment for the user to automate tasks. To chain tasks. To provide a standard interface to the things the user uses. More along the lines of a graphical bash script. Skip this middle step of building tools. Now the things that a consumer uses on a computer is no longer confined to the hardware of the box on which they type: they store files Google Drive, post pictures on Instagram, make a note on Twitter, etc.

    The file and standard input/output are no longer the standard mechanisms of interchange. You now have these web services, with their own authentication schemes and APIs. This has to be accounted for and handled by the programming environment, such that what comes out to be accessible to the user can in fact be chained to other components.

    Access to different elements – the device’s GPS and onboard camera, Twitter, a file – would for the consumer be treated the same way. Oh sure they might have to plug in their Tumblr username in the little widget representing access to that service, but what comes out would be in a dictionary format consistent and the user wouldn’t have to worry about implementation specifics. For the consumer, it would be no more complicated to read a post from Tumblr as it would be to read a local file.

    In the flow-based programming model, each of these elements would be its own block. Consumers could import blocks to access more services. Perhaps some of these blocks would be available for purchase from third-parties. The block that plays a music file might be part of the free base package, but the one that uploads to SoundCloud might be $0.99. The programming environment would merely serve as the framework to chain these blocks together.

    So what kinds of things would you build with this? You could have for instance:

    • When it’s 6pm, publish this note to my blog.
    • When I’m at this location, send an SMS to my friend.
    • When I take a photo, save a copy to my online storage.
    • When my work sends me an email, send this automated reply back.
    • When I press this button, I want you to do that and do this thing.

    I think that’s how you get closer to a product that’s  more accessible and bring programming to the masses. It’s also well suited to the low-level of complexity that have defined tablet/mobile interfaces. Is it still programming in this case? I’d contend so. 

    Adopting this model means foregoing the flexibility and power of a general purpose programming language. That’s okay because we’re minding the audience and building a demand for programming tools where none existed. That’s a good thing. If its limitations are ever an issue, then the user will always be able to jump to something better suited to their expanded needs, like Python.

  • When Social Justice is Not

    When Social Justice is Not

    This is about why I’m distancing myself away from the activist queer community. It has to with how a clique has developed, and how social justice has been used as the pretense to create it.

    I think what makes this particular problem hard to recognize is that social justice is itself about ending systems of oppression and developing empathy. It would then be unintuitive that a community built around these principles would then itself foster a system of kyriarchy.

    It should not be that surprising. It’s been my experience in other communities that that kind of shit happens even if the pronounced values are about some notion of equality.

    In terms of the local queer clique, people’s status elevates according to how “inclusive” they are. I put that word in bunny quotes because it’s not about genuine inclusion, so much as a narrow definition based on what’s popular on Tumblr. There’s a disconnect. Some examples from my own experience:

    • I get ID’ed as a butch trans woman. I now find myself invited to speak at events on no merit other than my identity. The queer sj folk who invite me see me as a label, not as the person behind it. It’s dehumanizing because I’m a checkbox now and reduced to a metric that has nothing to do with who I am or what I’ve done. These people meanwhile pat themselves on the back for their inclusion. But it’s a broken notion of inclusion.
    • The only time I see fat bodies represented in queer material is when it’s in the context of raising awareness about fat shaming. A post on Tumblr; a talk here. But you look at all the other stuff that’s published outside of that very specific context of talking about fat shaming, and those bodies are absent. It’s no deeper than the pats on the back they gave themselves for raising awareness.
    • When I was attending the stuff to organize a queer event they wanted a visual language interpreter, which is awesome. In Ottawa though, 40% of people speak French – and the entire event was English-only. There was an enthusiasm around the logistics for being accessible to the hearing impaired. There was zero enthusiasm around being accessible to French speakers, and in fact was pretty much dismissed. I attributed that discrepancy in enthusiasm to the fact that the former gets pats on the back, while the latter does not. The end result that was an event that was inaccessible to many people when it didn’t have to be the case.
    • Going on with that, linguistic access issues gets no air time in the local sj sphere. The list of what the sj movement cares about is actually quite narrow and led more by what’s rebloggable on Tumblr than regional needs. Social justice is not a zero sum game but what you have time to discuss in a meeting is.

    So it’s like the queer sj community is more into patting themselves on the back and elevating the like-minded (other people that pat themselves on the back.) That creates a clique. It’s unsurprising then to me that the same few people in Ottawa come to speak at every queer-related event despite this city having a million inhabitants.

    The clique is primarily under 30s, women and/or not-cis, absent of Francophones, poly, with extremely similar politics. It’s a very homogenous group within itself.

    It’s important to recognize that this is a community and that it is not above having the same issues around inclusion as any other community – even if this is one built on principles that would seem amenable to that.

    I’m done with the culture. I will continue to read sj stuff because there’s some really good material there which makes me a better person. However, I’m no longer all that interested in being considered a member of that community.

  • Peanut Butter Cheesecake

    Peanut Butter Cheesecake

    I was asked to make a peanut butter cheesecake for Christmas. I ended up doing one that was a mix of these two recipes.

    Oreo Crust

    • Box of Oreo Cookies (30 Sandwich Cookies)
    • 1 Cup Roasted Peanuts
    • 1/2 Cup Butter
    1. Melt the butter in a sauce pan.
    2. Grind up the peanuts and add to a large bowl.
    3. Add the cookies to the bowl and mash them up.
    4. Add the melted butter and mix it all together.
    5. Place the mixture at the bottom of a 10″ springform pan and pat it down.

    Cheesecake Filling

    • 32 oz Cream Cheese (4 Packages)
    • 5 Eggs
    • 1 1/2 Cups Brown Sugar
    • 1 Cup Peanut Butter
    • 1/2 Cup Whipping Cream
    • 1 Tsp Vanilla Extract
    • 1 Bag Reese’s Minis
    1. Set oven to 275 F.
    2. Cream brown sugar and peanut butter.
    3. Add eggs, vanilla, whipping cream, and cream cheese.
    4. Mix until smooth.
    5. Fold in Reese’s Minis.
    6. Pour filling into prepared crust.
    7. Place the cheesecake in the oven for 1.5 hours.
    8. Turn off the oven, leave the door ajar, and let the cheesecake cool to room temperature.
    9. Place in the refrigerator overnight.

    IMG_20131225_211422

    Thoughts

    This was well received. Even though I didn’t use a water bath, the cake did not crack and in fact was a little too moist in the centre. The crust was edible but hard to cut through in the thicker spots. I’m thinking skipping incorporating the roasted peanuts might help next time. Overall I thought the cheesecake was very good though.

  • Vegan Mini Oreo Cheesecakes (Take Two)

    Vegan Mini Oreo Cheesecakes (Take Two)

    This was my second attempt at making vegan miniature cheesecakes. The first attempt was edible, but the issue was that the top was gum-like, and the whole thing would then deflate in the center as they cooled. I crumbled Oreo cookies into the formed wells to hide the flaw.

    For this attempt, I used another vegan cheesecake recipe as a base. I still went with the Oreo theme, calling upon this recipe for the details.

    Vegan Mini Oreo Cheesecakes

    Makes 12 miniature Oreo cheesecakes.

    You’ll need to start at least seven hours before serving.

    • 1 Cup Cashews
    • 19 Oreos
    • 1/4 Block (4 oz) Firm Tofu
    • 4 oz (115g) Vegan Cream Cheese (half a package)
    • 4 oz (115g) Vegan Sour Cream
    • ⅔ Cup Maple Syrup
    • 1 Tbsp Lemon Juice
    • 1 Tbsp Vanilla Extract
    1. Soak the cashews for two hours.
    2. Set the oven to 350 F.
    3. Place the 12 paper liners in the muffin tin. Put an Oreo cookie at the bottom of each.
    4. Drain the cashews and place in a large bowl. Add the tofu, cream cheese, sour cream, maple syrup, lemon juice and vanilla extract. Blend.
    5. In a small bowl, crunch up 5 Oreo cookies. Fold them into the cheesecake mixture.
    6. Spoon the mixture into the muffin cups.
    7. Bake for 20 minutes.
    8. Pull out from the oven and let cool.
    9. Refrigerate for 4 hours or overnight.
    10. When ready to serve, discard the paper liners and serve cookie side up.

    IMG_20131201_151137

    Thoughts

    A definite improvement over the previous attempt. Whereas I wouldn’t suggest others repeat the other mini Oreo cheesecake recipe I put together, I would be comfortable recommending this one.

    That said, it has a flavour and texture onto its own which is distinct from a real cheesecake. It’s a bit more cake-like. Moving forward I think I’ll keep experimenting and see if there are other recipes for a cheesecake filling that are better. Perhaps this one is worth a shot. Or this one. I also won’t fold in crumbled cookies on the next attempt, to make the insides a uniform white look.

    This is a good little treat, and perhaps calling them “Miniature Oreo Cakes” without referencing cheese would be better.

  • Trans Day of Rememberance

    Trans Day of Rememberance

    Today, November 20th, is the trans day of remembrance.

    The name is a bit of a misnomer, because gives the impression that it’s about the past when unfortunately it speaks to a very real present.

    I’d like to share some statistics:

    • 64% of LGBTQ youth report feeling unsafe in their schools.
    • 90% of trans youth in Canada hear transphobic comments daily or weekly.
    • 74% of trans youth report being verbally harassed, 37% of them daily.
    • 49% of trans youth report being sexually harassed in their schools.
    • 37% of trans youth report being physically assaulted.
    • 27% of them by their parents.
    • 40% of youth in Ottawa’s streets are LGBTQ.
    • Youth of colour are disproportionately affected on all of these metrics.

    This is today.

    The television shows and movies they turn to ridicule them. The pillars of their world – parents and teachers – too often reject them. I wish I could say that most of my friends were still able to talk to their parents, didn’t face regular harassment on Ottawa’s streets, or weren’t ever told that they ought to die. Sadly, that isn’t the case. It is in this environment that 43% of trans folk report having attempted suicide, 10% in the last year. Not because they are trans, but because of the social shame and isolation.

    This is where you come in. As adults, if you know of a gender creative or trans youth, be there for them. Accept them.

    It’s not silence or wishful thinking that will make their life better.

    Sources

    1. http://www.cbc.ca/news/canada/ottawa/half-of-homeless-ottawa-youth-identify-as-lgbtq-1.1699604
    2. http://mygsa.ca/setting-gsa/homophobia-transphobia-statistics
    3. http://ohmygay.tumblr.com/post/11020923645/ontario-pc-party-distributes-misleading-homophobic
    4. http://www.cbc.ca/news/canada/sudbury/social-shame-heightens-transgender-suicide-1.1179394
    5. http://badtransjokes.tumblr.com/