On basic income

Alternate title: Where I Come Out As An Eeeeeeeevil Anticapitalist. Put on your best red scarf, raise your fist and start chanting, here we go. Sarcasm aside, this makes no pretense to be a well-built essay, it's more a collection of loose thoughts.

Let's agree on words

First off, the best way to have an argument that goes nowhere is to forget to agree on words.

By capitalism, I mean the dominant conception of economics, known as market economics. I mean a system based on accumulation of capital, and the possibility to generate profit solely from the possession of said capital. Capital is, basically, money. It ties into concepts of ownership, private property, etc.

By job market, I mean the dominant conception of work and labor exchange. I mean the concept of looking for a job, begging sometimes, and the exchange of labor against money mostly under the structure of private salaried employment.

By basic income, I mean an unconditional distribution of money to all, no questions asked. The implementation can take several forms: negative taxes, etc.


I am not talking entirely out of my ass on this. I have yet to read Marx, it's on my massive to-do list. But I did have basic economics classes in my higher studies, and I immensely respect our teacher for the perspective he provided. We mostly studied market economics, but he made it clear where they came from, and that they were only one way to look at things.

There is also a French youtuber known as Usul, whose ongoing series "Mes chers contemporains" is an in-depth look at various social, economical and political topics, built around specific characters in the French public scene. The latest entry, "A salary for life", is an analysis of the job market crisis and how it ties into the failings of capitalism, along with one proposal for another system, designed by Bernard Friot. Unfortunately the video is in French and has no subtitles!

Here comes the rant

Basic income is a good thing if your goal is to give everyone a very, very basic income indeed. The proposal in Finland will not allow people to live decently in Helsinki. It will be tight even in the countryside, as far as I can tell. As some will say, it's better than nothing. It might prevent homelessness and starvation, and that is good of course. But it's not enough, at all.

As explained in Usul's videos, capital holders are capturing more and more capital as time passes. The percentage of GDP that goes to those few people keeps going up: the amount of cash that is effectively removed from the system every year is growing at an alarming rate. To be clear, I am not an expert: but to me this means that basic income would not be sustainable, since the same minority would capture more and more of the money needed to pay it out. We could also use a moral argument, and ask why the majority should live on crumbs while a minority accumulates capital.

Basic income also considers us as creatures of need that need handouts. It does not recognize labor that we all provide, unrecognized by capitalism. Laundry? Labor. Dishes? Labor. Cooking? Labor. Childcare? Labor. Drawing? Labor. Sewing? Labor. Notice how so many of these are, currently, either handled by women or poorly-paid workers? Yep, this is where feminism comes in. All this traditionally feminine labor is undervalued by capitalism since it used to be provided for "free", and results in poorly paid jobs. A "universal salary" would have to recognize all labor, not just the one valued by the current system. It wouldn't be a handout but a recognition of the fact that we all work most of the time after all!

Many say basic income would increase consumption, and encourage entrepreneurship. It probably would! I however hope it would also increase community work, social discourse, and maybe contribute to toppling the system once and for all. Unless it creates apathy, and causes everyone to preserve a less-bad status quo instead. My parents often say that the French Revolution only happened because people were starving. And the common folk was urged onwards by bourgeois, such as merchants, lawyers, and more, who wanted the power of the nobles as recognition of their wealth. The majority didn't get all that much out of it.

Basic income is, in the form it is often proposed, a crutch for a failing capitalism. Increase consumption, keep the machine ticking. But this isn't how we save the planet, this isn't how we get healthier, this isn't how we progress.

Our good friends in Silicon Valley are convinced that technology will save the world. They consider governments useless, confusing a poor implementation with a bad idea. They think themselves brilliant at everything just because they're good coders, and good business people in a rotten system.

The Zeitgeist movement is convinced that technology will save the world. They have a conspirationist undertone that I dislike: I deeply believe that most of the world's problems are caused by incompetence and not malice, by deep convictions towards the wrong goals and not by evil. They lack a transition plan, but they have interesting ideas. It's worth a (very critical) look.

I've seen some people say that basic income allows you to opt out of capitalism. Wrong: it might allow you to opt out of the job market. But unless you start making everything yourself, renounce money and stop keeping cash in the bank, you can't opt out of capitalism. It's everywhere. I've seen blogs by people living a "zero trace" lifestyle: their supplies still generally come from somewhere. If what you mean by "opting out" is "left in peace to work on my stuff", you're not leaving capitalism. And that's okay. But use the right words, please!

Conclusion and obligatory link to current shitstorm

As mentioned, I don't pretend to be an expert, or that this is worthy of the "essay" name. It's just a long-form response to a curious twitter-buddy. I do not have a solution: because the devil is in the details, implementation is complicated, requires a transition plan, etc. For that, go read people like Bernard Friot!

Brianna Wu tweeted pro-capitalism stuff the day before yesterday (the tweets have since been deleted due to harassment, and she expanded on the topic and shared this piece on basic income). She got bashed in response, and our favorite gators of course pounced as always. I hate that this is what we have come to, that it becomes impossible to criticize problematic stances without giving ammo to hate mobs, that a takedown of her problematic lines gets called extremist, or - and that I cannot accept - that criticizing a pro-capitalist feminist is called sexist. Being anti-capitalist isn't being extremist. We have just so broadly accepted market economics as the norm that we forgot anything else can even exist.

You can participate in the system, leverage it and enjoy yourself without praising the status quo. And that's what I plan on doing. Does it make me a hypocrite? Maybe. I think it makes me human!

2015 in review

It's been a hell of a year. It feels like a big blur, lots of time passing by without growth, without progress, without learning, without achievements. Burnout does that to memory. Luckily, I've kept notes. And I can now look back, and realize how far I've come anyway.

What went wrong

1: Work

I'm still torn on how much to say about Frostbite. About what happened, what didn't, how I felt, why I really really wanted to punch some people. I'm not afraid of career bridge-burning: I'm scared it would get attention from gamers. What I can say is that I left the team in January and it was both the hardest and best decision I ever took. I'm still struggling with an immense amount of anger and guilt. I miss some people. I'm left with a master key of a resume and mental health issues. If you envy me anyhow, please do consider how fucked up that is.

I'm tired of engine coding and pondering what to do next. C++ bullshit kills me, week-long hunts for one-character fixes kill me. I'm not having fun working on engines professionally. It might or might not be due to Frostbite and anxiety triggers. I don't know. But it means rewriting the story I've been telling myself for three years, and that is difficult.

2: Health

Burnout, anxiety, panic attacks, insomnia. My old friend trichotillomania had never really left but I had some really bad episodes this year. My guts are broken. I spent the year hunting tests down, which yielded only all-clear. So I keep on inflating and being in pain and having emergency bathroom trips. It can add up to days wasted in pain, or two hours stuck on the throne over a day's work. Yeah, it's gross. Imagine how fun it is living with it. I don't know what's wrong. Probiotics seem to help, a bit. Lactose-free seems to help, a bit. Taking a break helps a bit. But it's still bad and I don't know why. And it scares me shitless to be broken at 23.

3: Being French

Hollande, the French president, started January hoping for a quiet year. He... did not get his wish. January exploded with Charlie Hebdo's office. Cabu's death hit me hard. His art was special to me. I watched gears turn into gears, as old agendas came to life in an overreaching surveillance law. I watched gears turn into gears, as France's old racism and islamophobia came crashing down once again. And then round 2 happened in November. I'm heartbroken for my country, for my nation. I weep for everyone who doesn't look, sound or behave French enough, whatever the hell that would mean. We're treading to road to Vichy once again. And I can't do anything. It hurts like hell.

4: Socializing

I have always been very, very bad at keeping in touch (Sorry, friends). I don't ask for news, I rarely give any. Like many, I feel that everyone secretly finds me awful, and that asking them to hang out would just waste their time. I also look horribly busy all the time due to my ridiculous hobby count, so people never ask! As a result I have been extremely isolated my whole life, and it was worse this year due to the loss of my immediate DICE social circle. I would vow to do better next year, but odds are I won't.

5: Gaming

I didn't take enough time to play games. I love the medium, what it is, what it can be, but I didn't take much time to enjoy it. When I did, I kept going back to the same games. From Bloodborne and my complex love-hate relationship with it, to the consistent masochistic comfort of Risk of Rain, I didn't discover all that much this year. The new The Room and the new Monster Hunter don't really count as new faces. Splatoon, Dungeon of the Endless and Ziggurat were the only really new things I touched this year.

What went right

1: Work

Leaving Frostbite was good. Working with Uprise was good. Working with Bitsquid was great. Leaving Bitsquid was hard, but what I needed to start healing. Getting praise from Niklas Frykholm meant a huge lot to me, and I am extremely glad and thankful I got to work with him.

2: The boyfriend

We found an apartment! We moved in together! We got a cat! We went to IKEA plenty of times, assembled furniture and did not kill each other in the process! Hard to say much about it but it's a huge deal. He's great, we're happy and he's been a tremendous help over the rough year.

3: On the road to recovery

It took me a while, too long really, to admit I was in very bad shape. It took three job switches, more than six months of half-time, and a whole lot of therapy before I just gave up and stopped. And now I'm getting better: not just not getting worse, but actually healing. It feels wonderful. My memory's starting to work again, I feel productive, I feel... well, happy's never really been my thing, but not-awful. Proud of my achievements. Almost at peace.

4: Arts and crafts

I learned so much. I tried to hold an art streak and failed: but I drew a lot anyway, and completed Inktober! My sketching has gotten a lot better, I've kinda maybe somewhat figured out ink, and I made some very decent watercolours early this year. I figured out Modo. I did some real-life sculpting. I want to do more, but argl time, as always. I finished UFOs (UnFinished Objects): an old biscornu and a scarf. I also made some progress on The Fortunate Traveler. I did dyeing experiments. I tried out woodcarving and glassblowing during Medieval Week in Visby. I finally figured out knitting, and got pretty darn good at it. I learned spinning, from my dreadful blobby first try in January to very nice chunky yarn and a lovely thread-like merino single now. I started weaving, from a tablet weaving kit, to inkle weaving, to a tapestry class.

5: Code

I kicked ass at GGJ15, helping my teammates create a portfolio piece they were super proud of. It wasn't much for me, but it felt good to deliver. I made several prototypes this year, from Processing quick hacks to a feature-complete game prototype. Hell, I even finished something for Ludum Dare 34. I almost made a thing for Revision but ran out of time, and noticed that Web and PC were the same compo after all. Not a chance. I do still love programming, and I'm bloody good at it. It just can't be the same thing I used to do, and think I wanted to do professionally.

I remade my bloody website and moved away from Wordpress. It had been bugging me for a solid year, but I finally took the jump and did it. Enjoy the static, PHP-free awesomeness.

Bonus: Misc awesomeness

  • I did half of the french subtitles for Game Loading: Rise of the Indies. The movie's good, go buy and watch it!
  • I tried out Crescent Bay and I'm now sold on VR. I am, however, not sold on it finding a market.
  • I finally spent some time reading again. Lots of great comics: The Wicked + The Divine now has a very special place in my heart.
  • I forgot my shoulder bag in the metro, with an iPad and a 3DS in it. I got it back and it still feels amazing thinking of that glorious moment at the lost and founds.
  • I have a note from Medieval Week that says "too much ice cream" so clearly that was a good time.
  • I graduated SFI, which means I now have a piece of paper saying I can speak Swedish!
  • I bumped into a fellow textile nerd on the metro - she asked about my tapestry frame - and ended up invited to a crafty hangout.
  • I got a gradient club spot at Hilltop Cloud and that is WAY more amazing than it sounds.

The way forward

The plan is to setup shop as a sole trader in January. I'll freelance code to pay the bills, and setup a mini-textile studio on the side. I want to try out the indie dyer gig, and probably sell some handspun and handwoven stuff when I get good enough.

My plan is still to get into HV Skolan, a local textile handicrafts school. I ended up first on the waiting list this year due to a late application. I need some time in art school to learn the process and find what I want to focus on. And I want said school to teach me either sculpture or textile. HV Skolan's one-year base education seems like a good start!

2015 has been complicated. It brought bad, ugly, horrible things. But on a personal level it feels like I touched rock bottom and started going back up. I'm hopeful. I'm glad to have a safety net, a wonderful-if-tremendously-annoying family, and a great boyfriend somehow putting up with weirdo me. Who knows, the cat might even become pettable next year.

Nadine the cat

Classy, fluffy, cute and grumpy.

Whatever happens, 2016 will be exciting. I'm giving up stability for freedom and experimentation, and I am of course scared out of my skull. But I'm also really, really excited! I hope it works out. I have no idea if it will. But you know what? I'm young. I'm a solid programmer. I'm a better engineer than most. I learn fast. I'll be just fine. And hopefully, I'll be able to support others who don't quite have it that good.

Ludum Dare 34 Post-Mortem

(Cross-posted from the Ludum Dare blog)

Hi! @LiaSae here. For background’s sake, I’m a AAA game coder currently taking a break to fix her brain. LD34 was the perfect chance to make something, feel good about it and fall in love with game-making again.

My game’s called Thunder On, and was made in 48h (~16h of work) even though it’s a Jam entry. I initially wanted to call it Thunder Down, but… Well, you google that and tell me what you find. Possibly not at work.

Thunder On: gameplay view

Gameplay view. It’s THAT kind of game.

The idea had been bouncing through my head for a good while now: “being” a lightning bolt, going down, losing energy as you go and having to create new branches, to see the final result once you touch ground. The LD themes gave me the constraints I needed to make a workable implementation.

WARNING: Coder lingo ahead. Artists beware, though I’ll try to have some snippets for you as well.

What went wrong

1: “WTF is going on?”

This was the general reaction from the bulk of the players (thanks all for your feedback, it’s very valuable!). I purposefully left the initial instructions vague, because I was going for whimsy / eerie. But combined with the lack of altitude indication of any sort, this means that what is obvious to me – “well of course the camera’s looking down and you’re going down, it’s like that in the Scene view!” – is cryptic to players.

2: Check the compo rules beforehand next time

I was aiming for a compo entry, but had forgotten even sounds had to be made from scratch. As I checked when getting ready to upload my entry, I facepalmed hard and ticked the Jam box instead. On the bright side, that means it sounds decent instead of terrible.

3: Unity 5.3

I don’t know what on earth was going on with viewport rendering, but a quarter of it routinely turned black for no apparent reason. Getting my alpha blended shader for the cloud layer to work was a matter of one hour of copy-pasting and tweaking the built-in shader to get a version that didn’t break. I can’t say I’m not used to randomly breaking tools, but generally that has been because I’m on a dev branch! I should have stayed on 5.2 for the jam and upgraded afterwards.

4: Responsiveness

I went with a coroutine-based easing animation for the movement, but that also meant blocking inputs until the easing is done. Unfortunately the end of it is virtually infinite, so I added a cutoff. But it was not tweaked well enough, and the game feels frustrating as a result, because you expect to be able to provide new input earlier that you’re allowed to.

5: Too easy

No time means little tweaking, randomness means impredictability, and as a result it’s way too easy to reach the ground. It would not be hard to add a system that analyses possible paths to decide how far up you should go for the best difficulty, but it would take time!

What went right

1: Hell yeah, I made a thing

It’s finished. It works. It feels and sounds and looks better (suppress banding rant) than anything I’ve ever made by myself. It’s complete, people like it overall, they get the point, and that makes it an excellent proof of concept for that idea. I’m happy and proud, and this does wonders for Broken Brain.

2: No crunch!

I live in Sweden, and that meant waiting until 3AM for the themes to be announced. Then to bed, let my brain work it, takes notes, sleep. The next day we had to go borrow the car, buy moving boxes for my partner’s family, drive to IKEA, survive IKEA, come back (this is all very Swedish). Then I had to go buy yarn Because Reasons, head off to an exhibit, go back home, head off again to dump some stuff, then drop off the car. THEN I was able to start on the game, at 5PM past. Between breaks and meals, I put in about 8h that day. The next day I had to go have lunch with a friend leaving the country, run an errand halfway across town, come back, which once again meant starting work at 5PM. Again I put in about 8h total, completing the last tweak to the feel of it all at 2:58AM and doing the submission afterwards. All of this to say: the week-end was packed, which forced me to put in normal work hours instead of Jam Crunch Hours, and I still made it. If life gets in the way, just slash scope massively.

3: Procedural techniques

The bolt is a binary tree (made simple by the two button controls). From there, I generate a mesh that represents the final bolt. The clouds are based on Simplex Value noise from an excellent tutorial at CatLikeCoding. This all adds up to something that feels more complicated and rich than it really is, and was fun to code.

4: Infrastructure

I typically use Assembla for projects like this. The repos have a size limit IIRC, but otherwise they’re free and you can create tons of them. So I created a SVN repo and off I went. Then I made sure to commit quite often, keep things running at all times, and added debug draw as early as I could. It helped immensely, because I didn’t have to guess whether things worked: I could just test, at all times.

Thunder On: scene view

The scene view with the debug tree.

5: Coroutines

I had never used coroutines. On related news, I positively hated gameplay and procedural animation programming for its heavy reliance on a crapton of flags. I don’t know how well coroutines-based systems will scale to bigger projects, but for this it was an absolute delight to chain per-frame callbacks instead of keeping track of all that state. It taught me a new way to think and that makes me immensely happy.


I’m happy with it, as I’ve mentioned. It’s far from perfect, but it was never going to be, and I had to finish, package and ship it off. It looks good because I went with something simple and cheap with glow. I learned stuff. I’m getting excellent feedback, and pondering whether to bring this further eventually. I’m taking the time to play and rate some games this time around too, and discovering a lot of fun things. So long live the Ludum Dare, and congratulations to everyone who made a thing, or tried to make a thing. It’s worth it.

Thunder On: final view

Making lightning bolts is fun!