I want to make apps for Android, so i’m learning Java.
It’s exceptionally dull compared to python.
I want to make apps for Android, so i’m learning Java.
It’s exceptionally dull compared to python.
Following on from my wildly successful Theatre of 2017 post, here is my Theatre of 2018 review.
Fun Home | Young Vic | Alison Bechdel | Holy shit I cried and cried and cried and cried and cried. Strong contender for best thing I’m going to see in 2018. The way they do the scene where you see Alison’s house from an outsiders perspective was a phenomenal trick of theatre. All the solo pieces were incredible. Am probably going to start crying again if I think too much about it to write the review
Heathers the Musical | The Other Palace | Okay so it gutted the darkness of the film by basically retelling Mean Girls but with camp violence, but the songs were good and The Other Palace is a great theatre
Machinal | Natalie Abrahami | Almedia | This was advertised by the theatre as “if you liked the writer, you’ll like this”. I liked this much less than The Writer. Really incredible staging but their whole “these are timeless issues that women face” metaphor by changing the era of each scene made it hard to get a grip on the characters.
The Book of Mormon | Generic Massive West End Theatre | Silly, quite funny satire on white Saviour narratives. Was humming the songs for days.
The Writer | Blanche McIntyre | Almedia | Simply brilliant. Some of the experimental stuff was a bit… Experimental but whatever, was amazing. Would watch again and again.
Summer and Smoke | Tennessee Williams | Almeida Theatre | Really, really great. Enjoyed this much more than last year’s Cat on a Hot Tin Roof. Completely minimal staging, entire backdrop consited of 6 opened upright pianos which were also used for great effect audibly. Got year off to a great start.
Julius Ceaser | Shakespeare |The Bridge Theatre | We got standing tickets to this super cool production in-the-round. Really exciting, probably best Shakespeare production I’ve ever seen.
Last week I saw I, Tonya and Lady Bird at the Walthamstow Empire, which is fast becoming one of my favourite cinemas.
Both Oscar nominated (with I, Tonya deservedly winning”Best Actress in a Supporting Role”) both films build their stories around the relationship between a working class young American woman and her mother, and the young woman struggling to fit into an elite world. One of them also involves a lot of ice skating.
I, Tonya‘s skittish pace and editing meant it felt shorter despite being nearly half an hour longer. Its opening disclaimer – that it was based on a true story, but one we don’t really know the truth about – efficiently set up the mood for the compelling 2 hour journey into Tonya Harding’s career. I felt slightly uncomfortable that perhaps the class snobbery and domestic violence – oppressively strong themes throughout the film – were being played for entertainment however ultimately I felt that I, Tonya is an unashamedly entertaining film that features domestic violence and classism, and trusts the audience enough to let them understand that. After watching the film, I immediately devoured the New York Times interview with Harding and recommended you do too.
Lady Bird was a deeply hilarious and affecting comedy about growing up. The film opens with mother and daughter listening to the closing lines of Grapes of Wrath, foreshadowing the films two major themes: A poor woman giving everything she has to care for other people, and a portrait of California outside the common LA/San Francisco stereotypes. The poignancy of Marion and “Lady Bird”‘s shared moment of emotion at the end of the Steinbeck audio book quickly gives way as a fight over not-a-lot breaks out between the two of them, resulting in a comedically juvenile car bailing that results in Lady Bird wearing a bright pink cast for the rest of act one. Lady Bird derives most of its emotion and almost all of it’s comedy from this excellent distillation of the teenage tendency to break into childish fights at the drop of a hat. Saoirse Ronan performance was physically and emotionally brilliant and practically every joke and emotional trap laid in the script worked perfectly. Timothée Chalamet’s pretentious douchebag teen boy was a particuarly cringe inducing mirror on myself at that age (although I wish I was that cool).
The fact that neither of these films won more/higher prestige Oscars mean I really need to see The Shape of Water and 3 Billboards ASAP.
Last year, Alice Glass released a statement on her website detailing the extensive abuse she suffered her from Crystal Castles band mate Ethan Kath over the course of the band’s history, starting when she was 15.
I was a devoted Crystal Castles fan as a teenager, and reading her statement made me feel guiltily complicit in a a horribly detached way. It’s with this background that CEASE AND DESIST, Glass’s first single since going public about Kath, was released.
The performance of Praying by Kesha at the Emmys was used as the night’s unofficial anthem for #metoo. Kesha’s song is similar to Glass’s – imagine saying that in any context in 2009 – in that it’s a musical ode to surviving abuse directed squarely at the abuser (in Kesha’s case, ‘Dr’ Luke Gottwald) from as public a stage as possible. With just the track’s title, Glass rips into Kath’s response to her blog post, turning the name of the legal letter his lawyers sent her into both a challenge to abusers, and a rallying cry to other victims. The main refrain of the song, ‘promise me, you’re never the victim’ tearing it’s way out of the pounding industrial beat resolutely rejects Kath’s threats.
In her revelations about Kath, Glass highlighted how he used the creative process as a form of abuse and control. She highlights one of their breakout singles Alice Practice, where Kath branded her performances as low quality or imperfect, “intentionally diminishing my role in its creation. It was another way of putting me down and preying on my insecurities.” While CEASE AND DESIST isn’t Glass’s most novel piece of work, it’s the sound of a freed artist wresting back control of her art and her narrative with a terrifying barrage of drums combined with her piercing signature vocals, and succeeding.
In many of the more relaxed civilizations on the Outer Eastern Rim of the Galaxy, the Hitchhiker’s Guide has already supplanted the great Encyclopaedia Galactica as the standard repository of all knowledge and wisdom, for though it has many omissions and contains much that is apocryphal, or at least wildly inaccurate, it scores over the older, more pedestrian work in two important respects.
First, it is slightly cheaper; and secondly it has the words DON’T PANIC inscribed in large friendly letters on its cover.
— The Hitchhikers Guide To The Galaxy
In their now deleted review on twitter of Ernst Cline’s breakout debut novel Ready Player One, @donniemnemonic introduced me to the phrase “Bazinga-ass shit”. Ready Player One is a pacy thriller with lots of suspense, action, and terribly written female characters. It also aggressively name drops all nerd counterculture produced between 1978 and 1992, like Stranger Things but without the charm. Bazinga, the catchphrase of Big Bang Theory‘s Sheldon Cooper, is synonymous online with all that is wrong with nerd subculture. Sheldon is a physics postdoc emotionally stunted to the point of open hostility who derives his sense of self from being superior in knowledge to everyone else, be that in science, or nerd counterculture. Bazinga is often Sheldon’s victory cry when scoring a petty point against someone who didn’t even realise they were being challenged. By referring to Ready Player One as Bazinga-ass shit, @donniemnemonic suggests that the book is only popular amongst nerds because of the sense of satisfaction they get from already knowing whatever fact just got mentioned. According to the Bazinga-ass shit assessment, the success of Ready Player One is therefore a damning indication of the unwelcoming and elitist environment that pervades nerd culture. Its a wonderful phrase and, although I suspect its perhaps a little harsh on Ready Player One, Bazinga-ass shit has become my go to label for things that are nerdy in an exclusionary way.
The irony of requiring a paragraph to explain, via multiple cultural references, that Bazinga-ass shit means that nerd subculture can be arcane and exclusionary is not lost on me, but now we’ve established what it means I would like to point the phrase at an unrequited frenemy: the maiden voyage of the Falcon Heavy was some Bazinga-ass shit.
The shortest of recaps. Elon Musk built a spaceship that could be relaunched, he built an even bigger space ship by strapping three of those other space ships together. This new space ship is the biggest ever space ship since the ones the USA and the USSR build to go to the moon. On the 6th February 2018, Musk & SpaceX successfully pulled off the test launch and he did it by greatly increasing the mileage on his 10 year old sports car.
SpaceX has been a vehicle for knowing nerd jokes it’s entire 16 year history, and the maiden voyage was an absolute feast of them:
“And so what?” you may rightly ask. SpaceX only exists because Elon Musk can convince people to invest in him and part of his investor appeal is this Geek God image that he’s carefully cultivated over the last two decades. The arcane exclusionary elements of nerd/geek subculture are in part deliberate. Geeks and Freaks often fail to conform to social norms, and frequently suffer for it. Therefore the elitist behavior of showing off that you know all the cool nerdy things that every nerd should know is a sort of gate-keeping mechanism to protect nerds from non-nerds who might hurt them, and allows Nerds to get one over the ignorant non-nerds using their primary strenght: their brains. Musk’s childhood conforms to the bullied geek who finds identity and success in science and nerd culture narrative to the letter so why not let him celebrate the counterculture he loves with the company he controls? If he wants to make one of the most important days in human space flight history an encyclopedia of Bazinga-ass shit, then surely it’s his look out.
Fine, I guess. As I allude to above, I kinda liked Ready Player One despite its Male Fantasy Fulfillment female characters and relentless wikipedia page quoting narative. I get all the in-jokes that Musk threw into the launch flight, and at the sight of “Don’t Panic” on the Sat Nav when the Fairings blew open, I’ll happily admit I laughed out loud, along with everyone else at SpaceX flight control.
Let’s go take a look at them shall we?
India’s mission to Mars this isn’t. I guess my problem with the Bazinga-ass shit of SpaceX is that when you make things exclusionary, you, uhhh, wind up attracting quite a narrow subset of people.
The crowd was shown only briefly during the entire launch, and I assume that’s because the live-stream director quickly realised that it consisted entirely of men with terrible facial hair and comfortable walking boots. I was watching this at home, stroking my straggly beard, wearing my well worn timberlands and the whole thing bummed me out. Space becoming private enterprise is great if it opens up accesibility to the getting into orbit for people that aren’t nations or militaries. But if it only opens up accessibility for people who can sing the whole of the “Knights of the Round Table” song, then perhaps it’s time to panic.
Well, it’s Christmas so I’m taking on stupid self invented programming projects, much like last year with Selenabot. This year I’ve decided I’m going to create a Markov Text generator that recreates the work of a Young Kadhim Shubber (YKS).
I’ve decided to scrape all Kadhim’s work on Felix that’s available in non-PDF form (for now… if this becomes very easy perhaps I’ll try and automate PDF reading so we can even get his frozen hot-takes on world politics from 2008).
First order of the day is making a markov text parser and generator that work in python3. I forked an old python2 code I found on github into Markov_text3, which is a python3 module for generating Markov chains of text from a given source (saved as a .txt file).
Now we have Markov_text3, I need to get the source material. Having a quick look at Kadhim’s page on Felix (http://felixonline.co.uk/authors/ks607/) he has around 140 articles online, although not all of them published under his name are written by him (he used to be editor and thus I guess uploaded other people’s stuff). It appears to be material from pages 6 & 7 (his later work) so I’ll scrape that material manually.
Mid-Jan Update: I got busy over the xmas holidays and this project fell by the wayside, the main problem was that I have completely forgotten how to use Beautiful Soup properly and thus couldn’t easily get a list of all the articles that Kadhim had written. This was stupid because I managed to get a Markov Generating script going quite nicely.
One word Review: Lazy
9 Word Review: Lazy reliance on pantomime to cover a weak script
1,978 word Review: Lazy reliance on pantomime to cover a weak script became a staple of the Marvel Universe films since the first Avengers movie, and appears to be spreading through Disney’s other big franchises like syphilis through a nursing home. It is abundantly present in Star Wars: The Last Jedi.
The Last Jedi’s script is all over the shop: too many characters and too many half-hearted storylines. The cement that holds this mosaic of mediocrity together is panto japes, which is a shame because an economically written script with a few jokes thrown in for relief could’ve been doable with the story they presented, and would’ve been preferable to what we actually got given.
In moderation, playing for laughs works really well, especially when it stops the film from getting too bogged down into cliches of its own creation. Let’s take the example of the caretaker fish/bird/nun critters on the island. The quick, simple establishment of them having a matronly hostility to Rei and the conclusion of their arc as the comedy pin used to safely deflate the over-blown Lightsaber training montage was a great example of comic relief. The look of stoic loathing when Rei sends a boulder crashing into their wheelbarrow was a perfect resolution to the training montage that got carried away with silhouetted aerial shots and sweeping orchestral scores, fast becoming a piece of self parody. It was definitely Panto, but it was well executed and served a purpose. Compare these caretaker critters to the Porgs (pictured above), who were supposed to be set up as a comedy counterfoil to the now devastatingly solo sans-Solo Chewbacca. Instead, they have no clear purpose — not even to deliver a gag like the caretaker fish-nuns– and appear to exist purely to eat up large portions of the scant screentime alotted to Chewie, whilst preventing Chewie from eating one of their own.
Leaving Panto aside for one minute, the interplay between Chewie and the Porgs brings up a second major flaw that the script kept committing: too many characters. I don’t really understand why they bothered bringing Chewbacca into the script to so blatantly under use him. Chewie, logically, is one of the most interesting characters in this whole film: a lovable sidekick whose loyalties have proven unquestioningly true who is now left alone. The only short insight into his grief is when, upon opening Skywalkers’s door with a hairy paw, Luke asks “Where’s Han?” and the Wookie emits a particularly sad cry. Chewie is now reduced to semi-inexplicably playing taxi driver to one of the three protagonists, and the relationship between Chewbacca and Rei, which presumable had plenty of time to develop on their pan-galactic hop to turn up just in the nick-of-time remained largely unexplored in a way that was irritating.
Bringing in characters to then not bother with them has become a somewhat recurring theme in these new brace of Star Warses, and isn’t limited to just Chewie in this film. Rogue One saw the complete waste of Mads Mikkelsen talents as a guy who turns up, sets a few plots half-rolling, and then dies. This film even more insanely wastes the towering talents of Benicio Del Toro, by setting him up to be an interesting enigmatic character who could really take the plot in interesting directions, but instead sells him out as a Lando-lite betrayer, except the script forgot to make us really trust or care about him (unlike Lando in Empire), so the audience don’t really feel his betrayal (unlike Lando in Empire) and ultimately his betrayal doesn’t really result in any major plot changing events (unlike Lando in Empire) so why did we even bother? And also, if we’re bringing back characters why haven’t they bought back Lando? An entire act of Last Jedi took part in a sleazy casino full of unethical millionaire gambling traders: Lando presumably owned and/or was imprisoned in the joint. If this franchise has one eye constantly winking to its past, why didn’t we get him back, perhaps to have a scene with Chewie where we could get some meaningful morning over Han? That way we could’ve avoided having to bring in an underwritten new character, and got some actual leg work out of another bit character.
One character we did get back was Master Yoda, to provide advice to Luke Skywalker. Given the context that Luke was a self-exiled Jedi Master who hates himself and everything he once stood for because he was responsible for the creation of the bad-guy who is now destroying the galaxy, Obi-Wan Kenobi would’ve surely been a more useful character to have turn up, given his extensive experience in the matter, but Alec Guinness died 17 years ago and thankfully they didn’t attempt a rerun of the weird CGI Peter Cushing of Rogue One. Yoda has been one of the most malleable characters in movie history. An Orientalist trope in Empire, an Oracle of doom in Return, and a sort of superhero Hans Moleman in the prequels, he returns in Last Jedi as a combination of all three, to help Luke carry out some casual firey iconoclasm before kicking the mid-life crisis ex-protagonist into action. His frustration at Luke for still not really learning anything that he’s been taught for decades was palpable, and elicited a sympathetic response in me because Luke, and a lot of his plot, are inherently frustrating in this film.
The script of this whole film fails at every point where Luke Skywalker is concerned. As I’d alluded to above, the basis of Luke’s plot line in this film is that he’s banished himself to a remote location to avoid Jedi-haters and to reflect on his own failing and responsibility in allowing the Dark Side to rise. This would be interesting, were it not also the exact arc that Old Ben Kenobi goes through in A New Hope, a fact the film even plays up to it wheeling out R2-D2 and the “Help Us Obi Wan” video clip, which even Luke points out is a “cheap trick”. The Last Jedi script blows though because Ben Kenobi actually turns out to be useful for both the audience and the protagonist, wheras Luke takes us on a mute hike up a mountain to milk some some Snorks — using pantomime to hide a poorly written script.
Luke’s choice of refuge seems thoroughly baffling. He refers to his hideaway as the “Hardest to Find place in the Galaxy”, but he’s hiding out at the literal centre point of his 10,000 year old religion. That’d be like the Pope going into hiding in the Basillica of the Nativity in Bethlehem: really obvious and a location that’s surely known to a few scholars here and there, especially as it appears to a) have magic rocks and caves and shit that clearly have strategic powers and b) an entire economy of fish-bird-caretaker nuns that doesn’t appear to be self sufficient (they have wooden tools on a completely deforested island). The script’s choice of hiding place for Luke is poorly thought through, the location too important to have been lost, and thus not really a good hiding space at all. But hey, it’s got Porgs, so we can smooth over these cracks in the script with more panto-plaster.
These are trivial complaints about Skywalker’s plot line though, and do not compare to the completely screwed up revelation that Luke kinda forced Han to hand over his only son to Luke to train into a Jedi, which Luke the royally ballsed up, before deciding to murder a defenseless teenager, deciding against it, ballsing that up too, and then setting into motion the creation of Kylo Ren.
Let’s pause here, we’re supposed to be sympathetic and hopeful about a character who tries to kill his nephew and then lies about it to everyone. His best friend dies not knowing that the reason his son hates him is ENTIRELY JUSTIFIABLE. His own sister appears to be unaware of this completely mental revelation. The effect of this completely mad bit of writing is that it renders Kylo Ren the most sympathetic character in the entire film. His offer to Rei after the death of Snoke of “let’s let both sides go to hell and start this galaxy again” is the most sensible idea anyone comes up with in the whole film, and entirely justified considering everything that’s happened to him. By rejecting his offer, Rei come accross as the brainwashed violent fundamentalist, not Kylo.
We don’t really get any resolution to this either. The now inadvertent good guy, Kylo Ren doesn’t get to kill the tyrannical Luke by his own hand, instead Luke inexplicably wafts off in a billowing gas of hot air after serving as a time-wasting distraction in an otherwise interesting battle, his death serving as a perfect metaphor for how his character was written throughout the shonky script. Luke and Kylo will presumably have some beyond-the-grave reconciliation moment in the next film, with the potential for a problematic scene where an abuse victim has to ask for the forgiveness of his abuser.
I could go on and on, and already have. So here’s a quick bullet list of parts where I thought the film succeeded.
In conclusion, a terrible script with too much winking and panto to be worthy of being a fully fledged star wars film. As bad as the lowest lows of the reviled prequels. I really hope John Boyega and Kelly Marie Tran’s (and to a lesser extent, Daisy Ridley’s) careers can survive one more assault from this rapidly crumbling franchise.
tweet = three_line_tweet_maker('main.py')
— recurbot.py (@recurbot) December 13, 2017
A few weeks ago whilst reading a hand-wringing article about how automated content production on YouTube & social media will lead to the inevitable collapse of western civilization, my mind wondered to the idea of social media content algorithms behaving like real social media users. Then the stupid question at the top of this post popped into my head and the stupid answer popped in right afterwards. An algoritm’s selfie would be its source code. I’m a big fan of contextless text robotic tweets, especially @IAM_SHAKESPEARE, and have always wanted to own one of my own. So I filed this in my head under “stupid programming exercise to do when you’ve got nothing on” and got on with my life, which currently involves a lot of redecorating.
Fast-forward to today, where I am in day 2 of what feels like a 2 day cold. I’m too bleary and snotty to concentrate on anything serious like my job, but I’ve also just slept for about 18 hours, so I needed some moderate activity to tire me out in preparation for another long sleep. 2 hours later, I present you with @Recurbot.
Code below, but basically it’s a standard twitter bot that reads itself, chops three random lines out of itself and then tweets them. I chose to make it random, as opposed to sequential, to add a bit of variety to it .
So far I’ve not set this up to be automated yet, it’s just running manually when I execute it on my laptop. I’m going to use this as an excuse to start playing around with pythonanywhere.com to see if I can get it to work there. If I can, i expect i’ll set it up to tweet every 2 hours.
By picking three random lines the bot has 27 unique tweets, whereas going through the code sequentially in 3 line chunks would only give 10, a 170% increase in content !! I’m not sure if I should beef up the code by adding in the module that it currently imports: Random.py, json.py and tweepy.py. Random.py is 726 lines long and obviously most of it isn’t really used in the production of the tweets — only randint is called once to get a number between 0 and 27. The more of this paragraph I write, the more convinced I am to just leave it at 30 lines long and let it have some repetition. After all, the bot that tweets Shakespeare is on it’s 4th run through and it doesn’t make it any less amusing when it pops up in my work feed.
Now die, die, die, die, die. [Dies]
— Willy Shakes (@IAM_SHAKESPEARE) October 18, 2017
Speaking of which, I’m going to finish my off-brand lemsip and go back to bed.
Don’t want to forget all the theatre I’ve seen this year so I’m going to list it all with a brief description/review, in reverse chronological order.
Keir and I are beginning to roll out “Nuclear Trains,“which is a project we’ve been working on very on-and-off for almost a year. It uses data from Real Time Trains to tweet whenever a train carrying nuclear waste sets off from a power plant, passes by a station (and we chose which stations to bother with tweeting) and arrives at its destination.
I got the idea for doing it after discovering Real Time Trains. Whilst I was waiting on the platform one evening I was using RTT to look up the freight trains that passsed through Highbury & Islington. I noticed that there was a slot on the Time Table for a train from a place called Sizewell C.E.G.B. to a place called Crewe Coal Sidings (DRS). I immediately recognised the name Sizewell as the power plant (with CEGB standing for Central Electricity Generating Board) and the words DRS standing for Direct Rail Services – the train operating company owned by the Nuclear Decommissioning Authority. A quick search of the freight trains that went to and from Crewe Coal Siding (DRS) showed the network of nuclear waste trains in this country. Keir put together a script (available on GitHub) that checks Real Time Trains every morning and sees which trains are running that day. It then tweets when they’re timetabled to pass through a station.
So far the friends we’ve shown it to are supportive. We’re a bit nervous of being accused of being terrorists or something, so I wrote a reasonably comprehensive FAQ which refers back to my old Tycho’s Nose blog post about operation smash-hit.
The output of the script looks a lot like this:
A train carrying nuclear waste from Dungeness power station to Crewe depot is passing Milton Keynes about now https://t.co/bmE9js8FzV 🚂☢️
— Nuclear Trains (@NuclearTrains) February 2, 2017
Which I think is rather neat. We’ve even coded a special tweet for the trains from Wyfla power plant that pass through Llanfairpwllgwyngyllgogerychwyrndrobwllllantysiliogogogoch so we can fit it in.
In terms of putting it out there — I’ll show it to friends who have big twitter followings and see if they want to tweet about it. I’ve also wondered about emailing a link to gizmodo/motherboard because it would be neat if it gets some coverage. 99.9% of the work has been done by Keir so it would be good for him to have been able to get some recognition for it, and it would also be cool if people who know how to do things like make interactive real-time updating maps could get involved.
What I’m looking forward to most about it will be when Sizewell B next decides to ship some fuel to Sellafield and a train passes through Highbury & Islington so I can go and watch it.