Ambience
Thinking about Salience, I’ve been concentrating on lack of specific focus when it comes to aural stimuli. Therefore the focus drifts from sound to sound in a spacious sphere enclosing me. In the car on the return trip from the grocery just a bit earlier, instead of blocking out the faint flapping of air scooting through the driver’s side cracked window, or the crumbling crush of my father’s cigarette being extinguished, I let the minute sounds usher themselves into my left aural field. I identified their position and distance without discursive thought. They lay over the hum and tremolo of the vehicle’s journey along the asphalt. The words my father spoke were not meaningful in a linguistic manner, but created an ostinato of vaguely a b a a g.
Oouh!A Sealed Womb
I enjoy bitching about the despotism that was always a part of my ex-friend Christian and began manifesting itself more and more in his personality throughout the years. It was repressed for quite a long time whilst he was with his bane and obsession, Karolina, and spewed forth geyser-like when he popped free of that relationship.
In Cloud Atlas, there is a discussion of a hermetic environment. I believe that is what Christian, in his despotism, is attempting to create. The people who inhabit his world are to be sealed away from outside influence at all costs. Any deviance is crushed mercilessly. He longs to be the sole mind and have his subjects be mere pieces to achieve useless (in my opinion) aims. Communication with the outside universe is limited to foraging or manipulating for funds.
Oouh!Enjoy What I Do, Bastard, Or Die
Wikipedia states that the Authority Bias is the tendency to value an ambiguous stimulus (e.g., an art performance) according to the opinion of someone who is seen as an authority on the topic. I am strongly affected in a negative manner when people around me exhibit this bias, whether it is towards me or towards others. I find it ignorant and at times sycophantic. One good example follows Wikipedia’s description. Many people I have known trust a musician’s opinion of a piece of music and especially whether it is worthy of the term art more than what they may consider a ‘normal’ person. I have found, however, that when it comes to taste in a particular art form (media that can only be evaluated in a subjective way, I find, is best for exemplifying the appearance of this bias), one who is a practitioner of the particular art form has no better taste than a said commoner. True, they may have been exposed to more details in the realm of that art form (and especially in a particular genre of that art form) and know more about the technical details of creating the form, but I certainly do not place their opinion any higher than any one else’s. A commoner - one who knows almost nothing about the creation or structure of such a form - can often offer an opinion which would never come to a practitioner’s mind, which is often entrenched in training and rigidity.
Rancour.
Dodecahedra.
Grisly dinner guest.
I just finished an article on the Projection Bias. My mother exhibited a facet of this bias earlier today. As did my father. I’ll say that they did in conjunction. They conjoined in this bias, cooperating in its use. I was at the receiving end of the bias. This is how it went:
My mother has diabetes. She and my father are worried that I, also, have diabetes. I am no stranger to this fixture of my mother (and of hypocondriacs, of which my mother is not one) to project her ailments fictitiously onto those around her and use this imagination to worry and stress herself. I agree that she had a semi-plausible reason for coming up with my pseudo-disease in the first place. I do act as if I am constantly thirsty. I consume bottle after bottle of water and carbonated beverage after can of carbonated beverage. This fact also causes me to urinate incessantly. I’m not sure this is a symptom of the onset of diabetes, but constant thirst certainly is. My ex-friend Zuzana realized she was a victim of this unpleasant malady when, night after night, she awoke every hour to hour and a half with a painfully parched tongue and throat. This endless need to quench her thirst led her to consult a physician. So she discovered she had diabetes. Great. Well, not great for her, but great for the theory that constant intake of liquid may be a bad sign. This, coupled with the Projection Bias, motivated my mother to motivate me to check my blood sugar. Happily, I found it is very normal. So. That ends that debate. For now, anyway!
I’ll also extend this idea of the Projection Bias to my ex-friend Christian who finds that if he is fond of a snatch of music or a particular painting, then pretty much anyone would and should be also a fan of it. I recall a demonstration of this tendency of his at the small coffee shop in Letna (I forget its name) which serves excellent quiche. We were there (dining on quiche) with his friend Milena and listening to some of the raw tracks I had recently written and recorded. (These happen to be the ones I am completing during this very stretch of time, actually.) After her rejection of Fold (then either unnamed or called Reprise), Christian insisted that she’d enjoy the improvisation She Ain’t My Girl because he claimed to enjoy it so much. From Milena’s obvious extroverted and immediate personality, I was rather sure she would not have the patience for even 30 seconds of the piece. Christian was projecting his own likes onto her. In fact, he is not the only one who is susceptible to this among people I have known. It is sometimes impossible for a person to understand how another cannot appreciate a certain piece of art (a novel, a song, a photo, a painting…) in the same way they do. I hope I do not exhibit this bias any longer, but I am sure I did in my younger days. I even recall an exact thought where I was in almost despair because someone I cared for dearly (or was obsessed with - same thing) did not appreciate a piece of music in the same way or to the same intensity that I did. The music was Recycled by Nektar. Why I remember this moment, I know not. Interestingly, this may have been the spark which led me to take account of this aspect of my personality, take it in hand, and slowly remove it from my psyche. Perhaps.
Oouh!The Circles Of Horus
…and how I was told time and time again back in the old days that I should always listen to every one’s opinion about each piece and change it accordingly to please as many as possible (of my friends, of course, who were pretty much the only ones listening, anyway). I never should have listened to this and certainly do not now. I am happy that Tony and I do not interfere with each others’ compositional process. We seem to both appreciate the other. We do make suggestions at multitudes of points. Some are employed. Others are sloughed away. I think we are walking our own path.
Why do I suppose we are?
What contradistinguishes Artists from Carpenters is the process of creation. The former is inspired, sure, by myriad sources, but he melds those inspirations into a whole, making it his own. He invents using tools. At times he even forges his own tools to invent with. And so on. He is the architect and sometimes also the builder of these designs. And, most importantly, he does not try to please anyone but his own inner muse. Therefore, he walks his own path. Whether he receives praise or not for his creation is not an issue for him. He has created. He moves on to create more.
The Carpenter, on the other hand, which is what most people are who call themselves mistakenly artists, has a scheme in mind. He has a plan laid out for him. He is its slave. The room for expression is minimal. Though he feels he is inserting some of his own artistry into the technique he has learned to mimic over hours, days, months, years of practise, he is mistaken. A Carpenter is just a tool for an Artist. They are, as the tired saying goes, a dime a dozen.
I recall a heated conversation in Polo back in most likely 2005 where Christian, Karolina and I discussed the idea of Carpenters and Artists. Christian wanted to insert a new category - a Composer - which is right above Artist. He is an imbecile. He wants to be called an Artist, and so do most of his ilk, but they are all carpenters. They are trained monkeys just like guitarists whose muscle memory is flashier than their brain’s computational power.
Part 17
After the Xmas excursion to Hobbs and its Casino, I am sitting again in my bed. It is my normal location at this time of the evening. I am not ashamed of this routine yet. I have found vigor in it lately, though I know it will stagnate me if perpetuated for too long. Already I feel a nag in some twitching neuron telling me to rest from music making this evening and break the habit. I may do just that. Tomorrow I may go to Java Jitterz and create there for a while, despite the slushy noise within the establishment. If I am still working on Filter, it may contribute.
Approximately two hours were spent working on the Hope For Wildlife web site. It is running now on Bluehost here after a bit of wily debugging! The main problem was the request.path was having /dispatch.fcgi prepended. This shat up my original code a bit.
I also wrote some very ugly, hackish code which will, I am absolutely sure, cause big problems in the future. I won’t even understand what I was thinking in a few weeks. Marvellous:
- if !submenus.blank?
#buttons
- cols = organize_columns submenus, column_headers
- if columns == 1
#left.span-9
- cols.values.flatten.each do |submenu|
%a.round{:href => "/pages/#{page}/#{submenu}"}
= format_menu_name submenu
- else
- c_keys = cols.keys
#left.span-9
- if c_keys[0].is_a? String
.column_header
= c_keys[0]
- cols[c_keys[0]].each do |submenu|
%a.round{:href => "/pages/#{page}/#{submenu}"}
= format_menu_name submenu
#right.span-9
- if c_keys[1].is_a? String
.column_header
= c_keys[1]
- cols[c_keys[1]].each do |submenu|
%a.round{:href => "/pages/#{page}/#{submenu}"}
= format_menu_name submenu
def organize_columns(submenus, column_headers = nil)
if column_headers
ch_keys = column_headers.keys
one = submenus.select do |submenu|
column_headers[ch_keys[0]].match(submenu)
end
two = submenus.select do |submenu|
column_headers[ch_keys[1]].match(submenu)
end
else
ch_keys = [ 1, 2 ]
one, two = (submenus.size == 1 ? [submenus,[]] : [submenus[0..(submenus.size / 2)], submenus[(submenus.size / 2 + 1)..-1]])
end
{ ch_keys[0] => one, ch_keys[1] => two }
end
Pretty stupid, eh? If anyone is bored enough to have the desire to look at the whole project, then I direct you to its github home.
I have decided to not continue my work on what I am simply calling The Album (yes, I need to name it, much as I did Filter in yesterday’s entry) this evening. If inspiration smacks me, I’ll contradict this stance, of course. One decision I reached today regarding it was to actually add a piece after Fold. If you have been living within my brain for the last two years, this radical idea may come as a near electrocution for you, but it makes sense to me. I wrote about it also in my pocketmod whilst taking my almost daily cleansing stroll about the Seminole park. The inspiration was in part from Filter and its portion which has the snare and rhodes bashing away on offbeats, and from Les Cercles d’Horus by Univers Zero, which I listened to at the casino.
I shall continue Cloud Atlas now.
Oouh!The disintegrating guitar in my left ear is beguiling
Hello, Irritating Day! I am irritated at you. You are, as some say, an irritant. So, yesterday evening, if I failed to mention it in yesterday’s writing, which, if I recall, had very little or nothing to do with what I actually did during the day, I signed up for the hosting service ‘Bluehost’ because those using their service have SSH access. Well, this excited me. I want to host all my Sinatra apps somewhere (besides Fucksheep, which I haven’t pursued so much lately, though I shall at some point). Let’s concentrate on that parenthetical statement for a bit here. I just checked the Apache configuration file on Fucksheep and see that if I run an application on port 6666, it will be accessible at blog.fucksheep.org, and if I run an application on port 9090 (or something like that), it will be accessible at polaris.fucksheep.org. Well, this happifies me. I’ll set up the Sheep Blog there and maybe also on Bluehost.
Ok - Bluehost
I transferred martesmartes.org from limedomains (which was a waste of time and money) to Bluehost. I also snatched martesmartes.net from out of the flux of unclaimed domain names. What has caused my frustration during the past few hours is attempting to get the Hope For Wildlife site up and running on Bluehost. I want it to be accessible at hfw.martesmartes.org so that Allison and Hope can take a look at my progress and comment during the development (which is happening every day now!). I need their feedback so I do not have to backtrack. Well, this is understandable and even a small Nigripes would understand so I shan’t continue about such matters. What is important is that it doesn’t fucking work. I am getting an Internal Server Error and am unsure how to track it since the site works fine on Mustela-Ermina and logging doesn’t seem to have any effect on martesmartes.org. Perhaps I just burned myself out. I am stepping back at this moment and shall reconsider the matter either tomorrow morning (if I have time before we are all off to the Casino in Hobbs) or in the evening. After I achieve functionality of one Sinatra app, any following one will be a cinch. That reminds me that I should snatch up thirstily siralfrediv.org and siralfrediv.net.
After writing yesterday evening, I began working on the Loopy piece. Before going into details, however, I’d like to address my lack of creativity in naming the pieces. We have Intersection and Union, both of which I like, but we also have Loopy, AcyBob and Reprise, all of which are not to my liking. An idea was to name everything from set theory (note the first two names), but I glanced through the Haskell Data.Set library and found little, unless I want to name something ‘foldr’. Hm. Actually, that is a good idea. I’m going to rename ‘Reprise’ to ‘Foldr’. It is a smooshed together piece containing many of the ideas in pieces which will come before it on the album. So, that is that. I’m happy I have achieved something by creating this paragraph. It amuses me that I am actually using themes from Foldr as I complete the other pieces. The result is the same. I’ll continue the naming convention when I get into AcyBob. Let’s take a look through the Data.Set library once again to see if we can find something which adequately describes Loopy. So wait a moment. Ok. I am going with Filter. The piece is a number of ideas tied together by a single theme, which is the 5/8 7/8 ostinato and simple atmospheric chords which churn on for long stretches. Yes. Filter it is. And I shall call Foldr just Fold.
After completing this, I’ll do my best to finish Filter to the extent that I finished the other pieces (that is, not really at all, but good run throughs and fleshing outs to be considered even closer on second scrutinies). Here are my notes:
7/8
-
2 cycles of ‘groove’ - 5 measures each.
-
4 cycles of ‘groove’ - with birds guitars.
-
2 cycles of nothing - with ascending tuneless guitar
5 measures of 7/8 and 7 measures of 5/8.
I want to add rhodes at the first of each measure.
-
6 cycles of ‘groove’ - That’s 15 bars of 7/4 or 30 of 7/8.
21 measures of 5/4 with 5 beat guitar phrase repeating. E
Put rhodes and drum on every other beat.
Starts at 37.
37 + (5 * 21) = 142.
-
4 cycles of ‘groove’ - with atmospheric guitar in repeating 7/8. A
This is where the BEAT kicks in.
Make a string melody for this. Perhaps Tony-vocal.
-
4 cycles of ‘groove’ - with atmospheric guitar in repeating 5/8. D
Add some strangeness to this. Let the rhodes do something simple.
Like some ‘jazz chords’.
-
2 cycles of ‘groove’ - with atmospheric guitar in repeating 7/8. G
There is a distorted guitar during this, but take it out.
Add string melody for this.
-
2 cycles of ‘groove’ - with nothing over it. F
Add rhodes stuff from Reprise, but it 5/8, plus strings.
-
2 cycles of ‘groove’ - with atmospheric guitar in repeating 7/8. G
There is a distorted guitar during this, but take it out.
Add string melody for this and Tony vocal.
-
4 cycles of ‘groove’ - with nothing really over it. Ees
More rhodes stuff from Reprise. Various craziness.
It makes sense to me! Initially, I’ll finish the bass lines. They are simple and groovy. Tony will approve. The madness parts will be the most interesting. The melody which Tony will sing (and the string part will play, though probably not at the same time) will echo the melody in Fold of either the bass or the middle tritone portion.
Good evening.
Oouh!Pipe wrench, smouldering corpse, floor
This evening I am going to revisit the thoughts I scribbled down, usually quickly, in my first pocketmod last week.
The first thing I wrote has to do with a currently ‘on pause’ project, that being the novel I began in November. On November first, in fact. I was inspired by another writing site. Actually, it was the site which recommended this very site on which I am writing now. This is it! I got a little past 25 000 words (I think - I may be fooling myself now that I consider it) and then lapsed into lethargy. Ok, that is not exactly true. What actually happened was that I went to Austin and the sheer excitement of being in that city which runs orange with nostalgia and inspiration entwined did not let me concentrate on novel-writing. You must admit that writing a book is a very solitary profession. During the first half of November, during which I wrote persistently every day, I was alone. There is little to distract in Seminole, Texas. It was easy to imagine the adventures of the Beast and of the unnamed main character and of Natascha, Nivalis, Houmlessak, Jonatan, Shambal and various other odd individuals (not to mention the un-individuals, that is, the seething masses gazing at passing trains, spanning platforms with their centipede-like bulk. Oh, yes, the novel was (still is) about the ambiguity of personality and its merger into larger forms (ie, society in all of its forms, from peer groups to nations).
But I meander.
The first bit in the pocketmod states this: Map out the path the beast took towards the leaving of his lady! The beast was one of the original ideas when the novel (first conceived as a short story) took seed in my sloshy brain. He was initially a television commercial about anti-lubricants for women who just got too sopping wet down within that crevice-thing they have. The idea if him (it?) morphed. In several parts in the novel (which is unnamed, as you may have imagined since I call it repeatedly ‘the novel’), the beast, from within a projection or a television, elaborates on various goods which are supposed to help the main character along on his ‘journey’. It’s more of a sojourn or a pilgrimage, actually. This beast is accompanied by a she-beast who usually just howls, makes rude gestures and provides various other visual accompaniments to the beast’s soliloquies. What is going to happen at some point is the main character and the beast will sit and actually converse. They’ll spill their guts to one another. The precursor to this activity is the beast’s she-beast leaving him. I still have not actually traced the path to that juncture, however. I can assume the beast irritated the beastess by taking the stage and hogging it one too many times, for example. I still want to let it lie. Inspiration shall strike at some point, I feel assured.
Next - “Sometimes I feel I could live in West Texas just because of the sunsets. The colours, though washed out pastels they may be, are irresolutely striking. Now, to continue my walk.
There is not much to add to that, is there? I imagine many fans of West Texas to claim the sunsets here are indeed some of the best (if not the best) on earth. I’ll have to agree they are magnificent. They don’t hold a candle to the ones up north (I’m thinking Alaska), however. So fuck you, fellow Texans. This place is a blight and should be erased from existence! Yes!
Fuck Texas.
That brings me to a peripheral point. My mother mentioned the other day (I think yesterday, in fact) that one day I’ll have to take care of this house because I’ll be the one living in it. I considered this. How would my life be at that point? I suppose I’d be quite a bit older. They’d be in the cemetery just out of town. I’d convert the living room into a studio. I’d be stocked up on booze just in case it would help with inspiration. Christopher would come stay for a few weeks and we’d have a grand time. Tony would visit and we’d create marvellous music. Most of the time, however, I’d be alone, sequestered in this nook on the bleak side of the earth and on the barren side of the universe. I’d continue my programming projects. Maybe I’d actually become proficient on an instrument… ? Thinking about it is calming, I suppose, but it is also the easy way. It is a lapse into lethargy. Hm.
My 750 words are up! Now, I shall continue my adventure with the Loopy track. It needs a better name. Do you have any suggestions?
Oouh!I was the primer for the first universe
I am incredibly fucking frustrated concerting Project Euler #254. I am befuddled. Flummoxed. And overall - irritated. The problem is an irritant. I posted some things about it in the Sheep Blog earlier and have since learned that none of that matters at all. Of course, this will be soon merged with the Sheep Blog, so the last sentence is half superfluous. But, anyway, creating a list of every number which has digits which add up to i was big fun, though ultimately pointless. Having the values of f(n) does nothing for me because with each of them I’d have to calculate the n. The sheer amount of computation involved is staggering. Furthermore, to get each f(n) for i = 150 takes longer than it would to pull a tugboat full of raving mustelids from here to South Africa without encountering any water or poisonous snakes.
So!
I hope you have noticed that I have begun writing these entries (starting today) with markdown since the Sheep Blog uses BlueCloth to create the fucking html from fucking text. Yeah.
So!
My next strategy was to make a map of sf(n) -> n. The code I have just come up with is this:
sfMap z = sfMap' (IntMap.fromList []) [1..z]
where sfMap' theMap [] = theMap
sfMap' theMap (x:xs) = sfMap' (if (IntMap.lookup sfx theMap) == Nothing
then IntMap.insert sfx x theMap
else theMap) xs
where sfx = sf x
I’m using IntMap because I read in the glorious ghc library reference that it is exceedingly quick (maybe even quicker than a marten). Now, this creates a map with only one entry for each i (which is sf(x)). Since I am being sequential in my xs (note the [1..z]), the first time a x results in an i (sf(x)), it is recorded. Any further duplicate *sf(x)*s are ignored. I think this is the correct step forward (as opposed to the false stagger in a random direction earlier) even though when attempting to find is up to 1 000 000, it was taking so long I had to interrupt the process. I need to create a more efficient way of making this map. I have some shades of ideas, but they are still murky.
I shall continue after returning from an excursion to ‘Southern Rose’ with my parents for dinner. Yum…. I suppose.
I have returned. Actually I returned over two hours ago. What have I done since then? Well, unfortunately, I have not forgotten about Project Euler and my little problem (cue the song, though it has little to do with mathematics). I played Hand and Foot with my parents (I came out on bottom and do not mind in the least), consumed some oatmeal cookies (much to my tummy’s chagrin) and wrote a program.
I had this brainstorm whilst at the restaurant, actually. There was a book I espied in Luxor in Praha back in, um, most likely 2007. It was about sharpening discursive skills or some rot of the like. I enjoyed thumbing through it and desperately wanted to purchase it because I felt my quickness of mind has been dulling like a blade scraped repeatedly on porous rock. Yeah. Like that. Unfortunately, when I next returned to the bookstore, I could no longer locate the tome. I did remember a point from it which stuck with me and has taken me over three years to implement. insert smiley. The book suggested doing a number of simple arithmetic problems quickly every morning consistently. I always liked the idea, but have, as I just wrote, and you know I love repeating myself, procrastinated until about 30 minutes ago in employing the method in any sort of tangible manner.
So I wrote the program. It is called daily_arithmetic.rb. Any fool can see that I wrote it in Ruby. I really should have done it in Haskell, instead, but IO in Haskell flummoxes me terribly, as very few of you know. Possibly none of you knew that until the very moment you read the last sentence. Just for fun, I’ll post the whole program here. 750words.com would probably call this cheating, but it is an original work, after all, and I’ll attempt to vomit up another 100 or so words afterwards to appease the spirit of fair prose play.
require 'rubygems'
require 'datamapper'
require 'dm-mysql-adapter'
DataMapper.setup(:default, 'mysql://localhost/morning_quiz')
class Arithmetic
include DataMapper::Resource
property :id, Serial
property :question_count, Integer
property :score, Float
property :time, Integer
property :type, String
property :created_at, DateTime
property :updated_at, DateTime
end
choices = { 1 => :+, 2 => :* }
puts "Good morning, Schweinehund."
puts "1) Addition"
puts "2) Multiplication"
while !choices.keys.include?(choice = gets.chomp.to_i)
puts "Don't fuck with me, sunshine!"
end
puts "How many questions, you dullard?"
while (count = gets.chomp.to_i) < 1
puts "You are straining our relationship, cabbage-boy."
end
puts "Ready?"
gets
start = Time.now
correct = 0
count.downto(1).each do |i|
fst = rand(9) * 10 + rand(9)
snd = rand(9) * 10 + rand(9)
ans = fst.send(choices[choice], snd)
puts "Question ##{count - i + 1}: #{fst} #{choices[choice].to_s} #{snd}"
if gets.chomp.to_i == ans
correct = correct + 1
puts "Very good, vole."
else
puts "Nope!"
end
end
finish = Time.now
score = correct.to_f / count.to_f * 100
puts "From #{count}, you answered #{correct} correctly."
puts "Your score is %.02f%%" % score
puts "It took you #{finish.tv_sec - start.tv_sec} seconds."
Arithmetic.create(:question_count => count,
:score => score,
:time => finish.tv_sec - start.tv_sec,
:type => choices[choice].to_s)
Isn’t that fantastic? DataMapper is an especially cool gem. I recall the days of struggling with mysql (or postgres, or whichever). Now, well, existence is made more beautiful by the simplicity of DataMapper.
Ok, the next task of the evening is to begin working on the Loopy piece. I wish to flesh it out and shall exude mellifluous energy from my beta-brain into LMMS and Audacity. I think I will not even bother with Lilypond. The spirit of the original ‘composition’ was one of spontaneity. Jesus Christ Mother Of Satan And His Holy Bedfolk, I do not even recall what key (if any) it is in. Perhaps that 7/8 5/8 ostinato was an A and a…. well… I am not sure, actually. Doesn’t this ‘unknowing’ make it more exciting, however? I am babbling away. So have nice evening.
Oouh!More Project fucking Euler
I am proceeding with my attempt at Project Euler Problem #254. It revolves around reversing functions. g(i) is basically the reverse of sf(n). What I am doing is taking an Integer (i) and returning every number k with the following property: If one adds up the digits in k, one comes up with i. Here is my code so far (see if you can spot the obvious error before I continue!):
listToInteger :: [Integer] -> Integer
listToInteger xs = listToInteger' $ reverse xs
where listToInteger' [] = 0
listToInteger' (x:xs) = x + 10 * listToInteger' xs
integersAddToInteger :: Int -> [Integer]
integersAddToInteger i = sort . map listToInteger . digitsAddTo . take i $ cycle [1]
digitsAddTo :: [Integer] -> [[Integer]]
digitsAddTo [] = []
digitsAddTo [x] = [[x]]
digitsAddTo xs = thirdSet xs ++ secondSet xs
where secondSet xs = digitsAddTo $ [first xs] ++ rest xs
thirdSet (x:xs) = map (x:) . digitsAddTo $ xs
first (a:b:xs) = a + b
rest (a:b:xs) = xs
When I call, for example, integersAddToInteger 5, I get this:
[5,14,23,32,41,113,122,131,212,221,311,1112,1121,1211,2111,11111]
Now, the obvious error is that if I want to find all k for an i greater than 9, the function digitsAddTo will begin using double digit numbers. I shall now attempt to fix this problem.
Die, Puccini! Die!
Did I mention that I abhor Puccini? Well, then, you may ask why I am listening to Puccini. The answer is this: I am listening to my music collection in more or less alphabetical order. I do cheat a bit, however, especially when I acquire a new album or want to listen to something which is previous alphabetically from where I am at the moment. Anyway, I am on ‘G’ at the moment and Puccini’s first name was Giacomo. I use past tense there with great satisfaction. For, were I to use present tense, it would indicate that the world was still a more repugnant place because of this human’s continued existence. Let us all applaud the fact that he could not create any more of his appalling works. (I await the slow dying of the raucous applause before continuing.) So, you ask once again why I am torturing myself by listening to the wretched excuse for a composer, even if I am listening to my collection in alphabetical order? I have told myself many times that I should give each artist (or idiot, in this case) a few chances before purging them from my collection. I fear (and I use that word with utmost sarcasm) that this will be Puccini’s final chance. Of course, that means I must suffer through Il Tabarro (which I am doing as I type this) and Il Trittico (which I shall do at some not too distant future point in time). If the latter does not redeem him in any manner, my hard drive shall be cleansed of his presence. And that is enough about that. Yus.
I few lines from ‘Cloud Atlas’: Had a view of an alley: downtrodden scriveners hurtling by like demisemiquavers in a Beethovian allegro. Afraid of ’em? No, I’m afraid of being one. What value are education, breeding and talent if one doesn’t have a pot to piss in?
I’d say the latter is of value no matter your situation. I am being broad in my definition of ‘talent’, however. Perhaps you have a talent for adapting and surviving. Your skill at adapting and surviving will be honed by this raw talent. Improvisation is something which may be learned (ie, education) and can also contribute to survival skills. I’m not sure about breeding, though again it depends on your connotation of the word. Since the book is set in the first half of the 20th century (so far - I have not completed the novel), ‘breeding’ is emphasized. There are many comparisons between the ‘white’ races and ‘mongrel’ races implying the former are superior and the latter uncivilized sometimes to an extreme degree. This was greatly impressed on me during the first ‘tale’ in the book.
As for the pot to piss in, I’d argue that you can better yourself no matter your situation. The only people not bettering themselves are ones falling into malaise and idleness because of routine, stagnation or despair. I can imagine myself living under a bridge, but still scavenging enough coins to keep my supply of pens from dwindling. My current handwritten journal is far from complete. I’m not sure how well my laptop would fare under a bridge, however. Heh.
At the moment, though I do have a pot to piss in (at my parents’ home), I am in desperate straights concerning funds. Though I do search (not as frantically as I would were I living under a bridge) for a job daily, I spend the remaining time staving away idleness and at least writing here, creating the Sheep Blog (which is pretty much finished, by the way, and I am copying each of these entries into it after completing them), and soon beginning work on the Hope For Wildlife website.
That is not to mention the music.
Yesterday evening, I began writing the bassline to ‘Union’, another piece in the cycle begun two years ago (more or less). I have over half finished, and though it is simple, it complements the melody in a fine way, methinks. All that is left is the ‘instrumental’ portion, which I shall write this evening, that will echo the 6/8ish rhodes part in ‘Reprise’. I am not sure how closely yet and shall find out spontaneously what my beta-brain invents once today evening rolls along.
I have been chatting with Christopher every few evenings and each time it spawns inspiration. Yes: The cognitive bias work. What I have written so far is not enough and I feel my idleness in this matter is an insult to the spirit of camaraderie. I must write about him and about me. Yes. Anchoring, Confirmation Bias and Framing. Those three initially.
Now, I shall piddle about with the Hope For Wildlife site. Fucking Puccini is still playing. Die! Die! Die!
Oouh!Project fucking Euler #254
I have spent a few hours working on this and have come up with a solution but would most likely need an infinitely more speedy computer for the computation to finish. I let the compiled version run for over an hour with no result. Great, eh? Here’s my code so far:
-- Define f(n) as the sum of the factorials of the digits of n.
-- For example, f(342) = 3! + 4! + 2! = 32.
-- Define sf(n) as the sum of the digits of f(n). So sf(342) = 3 + 2 = 5.
-- Define g(i) to be the smallest positive integer n such that
-- sf(n) = i.
-- Though sf(342) is 5, sf(25) is also 5, and it can be
-- verified that g(5) is 25.
-- Define sg(i) as the sum of the digits of g(i). So sg(5) = 2 + 5 = 7.
-- Further, it can be verified that g(20) is 267 and
-- sg(i) for 1 <= i <= 20 is 156.
-- What is sg(i) for 1 <= i <= 150?
-- This does not finish! I need a better way to compute g.
module Main
where
import Data.Char
import Data.Maybe (fromJust)
factorial :: Integer-> Integer
factorial n | n < 0 = factorial (-n)
| n < 2 = 1
| otherwise = n * factorial (n-1)
intToDigitArray :: Integer-> [Integer]
intToDigitArray = map (\x -> toInteger $ ord x - 48) . show
sumFactorialOfDigitArray :: [Integer] -> Integer
sumFactorialOfDigitArray = sum . map factorial
-- f(n)
f :: Integer-> Integer
f = sumFactorialOfDigitArray . intToDigitArray
-- sf(n)
sf :: Integer-> Integer
sf = sum . intToDigitArray . f
g :: Integer-> Integer
g 1 = 1
g i = (+1) . snd . last . takeWhile (\p -> fst p /= i) . map (\n -> (sf n, n)) $ [1..]
sg :: Integer-> Integer
sg = sum . intToDigitArray . g
ans = sum . map sg $ [1..150]
main = putStrLn $ show $ ans
SO!
As you can see, the computation of g runs through everything from 1 up to i, computing each sf(i) along the way. This is the source of the never ending computation, methinks.
Something that occurred to me is that I could find every number which could could result in i if I added up their digits. The problem with extraneous zeros is daunting, however.
Hm.
Oouh!Staggering deafly
I seem to have not written yesterday. The reason for this heinous crime is the extreme productivity of yesterday. The Sheep Blog is practically finished. All that remains are parsing of new messages to create proper markup (I’m thinking of using RedCloth or BlueCloth for this, though I know absolutely nothing about them and have not even bothered thinking about Markdown or whatever it is called before) and to add an Edit page. This latter bit should be a cinch.
After waking up blearily yesterday morning, I showered and proceeded to immediately begin work on the Sheep Blog. I must admit that I breezed through the Ajax implementations with very little problem. The only small snag was that when sections of a page are reloaded via Ajax and themselves contain calls to javascript, they do not function. That is, The content section of the Sheep Blog has one or more Entries. Beneath each entry are two links, one pointing backwards to the previous day of Entries and the other pointing forward to the following day of Entries. These links would not work when the section was reloaded (though they did initially when the whole page was loaded at once). The solution was to place all of the Ajax code in a function, which I called ajax_hovno, and to simply call the function once more from the loaded content. I admit I had to google around a bit before I realized this was the proper solution.
I did an approximately an hour’s worth of this coding at Java Jitterz, the only ‘coffee shop’ in Seminole. I quite like it there, actually. And, it is a place to go to get away from the house (besides my daily walks), and getting away temporarily (or even permanently!) always improves productivity. Well, as I wrote in my ‘100 Things About Me’ five years ago: Small changes, no matter how rudimentary or subtle, always invigorate me. I must admit that my biggest fear is stagnation. Yus. Which brings me to the next topic and the biggest bit of productivity for the day.
I stayed up until about three in the morning working on Reprise. The night before I had written the Rhodes and String parts in Lilypond and was pretty satisfied. So, yesterday, I whipped out LMMS and programmed in the parts. It took longer than I thought it would even though there are many, many repeating phrases. It is, after all, a very repetitious song, though in a shifty, sliding manner. The repeating phrases slide over one another, some changing subtly each iteration, others remaining static. I enjoy the effect, which is fortunate since I wrote it. Heh. The original (and still current) intention was to pan each part hard to one side and throw a deep reverb on the combined result. All mixed together, I had hoped it would give the Rhodes and Strings a distant feel. It did not exactly do that, but instead made them more ambient and blurry. I have not worked out the exact mix parameters yet, but the demo I mixed down before I actually attempted to go to sleep sounds mediocre. I’ll reuse the word ‘blurry’ and call it appropriate.
The sequenced parts are three in number. Part two is nearly, but not quite, part one sliced in two. The third part is a melody of sorts which accompanies the chord progression and weird backwards/forwards guitar part which repeats and fades at the end of the piece. In the center, I created a bastardization of the vocal melody in ‘Union’. It seemed like a good thing to do at the time, somehow tying the ‘album’ together. The Rhodes part will in a way be featured during the extended instrumental section in Union, making another tie. Possibly it will show up somewhere in the Loopy Unnamed Song, also. Anyhow, this part three is mixed badly. I’ll bring the rhodes up an octive and maybe cut its bass frequencies a bit for better results. I may not actually do another mix or any modifications tonight, however, because I have plans for Intersection, which is the first piece in the sequence.
As a brainstorm before I fell asleep (which was long coming), I thought it may be good to add another song to the ‘album’, that being the ‘Acy Bob’ piece I wrote in the hotel whilst first in London back in February. I know I worked it out a bit later on and that Tony wrote some lyrics. The plan is to create something very simple and repetitive with a groovy beat. Yeah. A dance track! A hit! That’d be the cute little day.
Oouh!