I don’t think I ever posted this. This one’s for you Mum & Dad. I miss you guys so much.
I don’t think I ever posted this. This one’s for you Mum & Dad. I miss you guys so much.
That moment in time when you wrote a function named “shuffle_head_around.”
And a week later you wonder “WTF was I thinking? This name doesn’t even make any sense.
Over the past three years I’ve had a few acquaintances snidely mock me and my life because I have an agent that represents me. They gloat of how foolish I am to pay this agent to represent me when negotiating a business deal when I could be easily negotiating for myself and pocketing that percentage.
Each night, as I lay down my head from another weary day, I gently cry myself to sleep whilst I lay on a big pile of cash.**
** I don’t actually sleep on a big pile of cash. Money smells of old gym socks and can be uncomfortable. I leave all that cash in an interest bearing account, working hard for me while I sleep in until 11AM every week day, long after those self-same acquaintances have gone off to their boring 9-to-5 jobs in cubicle hell.
My wife purchased a new laptop satchel/messenger bag a couple of days ago.
The tag on the side said it was “Kahkai” coloured.
So my wife and me, being who we are, latched on to the “Kahkai” and have been crowing it loudly like the Snipe in the Pixar film Up! ever since.
I have a very nice green-ish/tan camera bag made by Pelican that my wife wants to take with her on a trip.
She asks “Do you know where the Pellegrino bag is?”
“Do you mean the KAHKAI! one?” I ask.
“Wait I mean the Penguin bag. Uh Pellegrino bag. Is it Penguin or Pellegrino?”
“I sound like an ijit.” she responded.
“The KAKHAI! Pellgrino bag is below the printer. The Penguin bag is behind the door.” I smiled.
No really, it was immensely funny. You should’ve been there.
And when I try to explain to people what “love” is, this is it.
It is “us.”
And people who have never experienced a moment of “us” with another person don’t really understand what it means to connect with another person deeply enough that the stupidest joke makes complete sense.
One of the metrics I use to determine if we are having a tech bubble is the amount of snark I have to delete from my reply emails for me to maintain a proper level of professionalism.
My cat (yes, my cat), has reached a point in her life where she thinks that all computer screens are now touch screens and can be appropriately interacted with.
She will paw at the screen and “ask for her game” and then wonder why it doesn’t respond how it does on the big, touch screen monitors she normally plays on.
Perhaps I am anthropomorphizing her reactions a bit.
But there is definitely a posture of confusion, possibly even disappointment, when trying to play her game.
My wife does this on a daily basis when she tries clicking on my Mac Book Pro’s screen.
It’s a shame I never had a child.
I would have named him Abraham Lincoln.
I would ensure he had a generous weekly allowance that would sustain him throughout his entire life.
The requirement of receiving the allowance would come with the stipulation my son writes random, nonsensical quotes at regular intervals and posts them publicly, dated, on the Internet.
“It must be true, it was on the Internet.” – Abraham Lincoln, 2016.
From 15 systems running Windows 7 (and a few 8’s) and 1 Linux box and 1 OS X laptop.
To 9 systems running Windows and 7 Linux boxes and 1 OS X laptop by July.
To a planned 2 systems running Windows (because we cannot change the OS) to everything else OS X and Linux by end-of-the-year.
Because Windows 10 happened.
Or rather, because Microsoft decided that I should upgrade because they said so.
Imagine purchasing a loaf of bread and then being told by the baker whether you can make toast or not.
Signed up to ownDrive.com.
Got this response immediately after clicking submit.
Oh yeah! This instills confidence in storing my valuable data with you:
There have been serious but non-fatal crashes directly connected to Pokemon Go.
In early 2007 I wrote a rather prophetic piece.
This was just prior to Apple’s iPhone announcement if I recall correctly. Though don’t hold me to that.
People said that it was ridiculous… “Well that will never happen. You need to give people more credit.”
I think I was far too conservative in my outlook. I wish now I had thrown in some forward looking statements about Augmented Reality.
Was at a tech mixer/meet-up/networking thingy in Silicon Valley area just before July 4th holiday.
“And we have a lot of machine learning in here” said the entrepreneur, indicating his app.
“It’s classifying product categories automatically based on the description and the manufacturer?” I ask.
The entrepreneur nods.
“A Naïve Bayes classifier then.” I add.
The technical cofounder, silent until now, eagerly starts to explain how he implemented it in NodeJS with an off-the-shelf gem.
“No, no, far more than that. We have a lot of machine learning in our app. This is Deep A.I.” said the business co-founder using air quotes.
I swear you could see the italics.
I looked at the technical co-founder without saying a word. He continued to babble about Naive Bayes and gems and NodeJS.
I asked about scaling the P values and if he was using a logarithmic function.
The run-on-sentences stopped. The response was slow and thoughtful. “I think that’s how I stop the values always trending to near zero. I don’t really understand that part.”
I nod politely. “Nothing wrong with that. Use whatever works, even if you aren’t sure you fully understand how it works.” I say encouragingly.
“Dude, shut up, you’re talking about stuff we’re trying to patent.” said the business co-founder impatiently.
“It’s just a Bayes classifier” opined the technical co-founder.
The business co-founder looked pained. “He doesn’t really mean that. It’s more complicated.”
I nod again, just as politely.
“Did you try a Laplacian smoothing algorithm? Or additive smoothing?” I asked knowing full well that Laplacian applies to polygonal meshes and that additive smoothing and Laplace smoothing are one and the same.
“Yes” said the business co-founder.
“I don’t know what those are.” said the technical co-founder the merest fraction of a second behind.
“Have you solved the overfitting to data problem?” I asked the business co-founder. A Naive Bayes classifier generally doesn’t suffer that problem.
“Of course. I won’t deny we had some trouble, but we overcame the overfitting issue.”
I nod again.
The technical co-founder looks like a deer caught in headlights.
“This is a very nice looking app” I said to the business co-founder. “But I will give you one piece of advice.” I didn’t look up from his phone that I was holding on to. I was still swiping through the screens of the app. “When you talk to potential investors, do not bullshit them about your technology. It’s no fun to lose out on an investment during the due diligence phase. The tech guys working for VCs are a lot sharper than I am.”
Now I had two deer caught in the headlights.
“Are you looking to hire me or get hired by me?” I asked the random number that interrupted my deep-in-the-code train of thought.
The person on the either end of the line had awkwardly introduced himself as “Bob” though judging by his accent I doubted the veracity of that claim.
Bob had made a long rambling introduction and I had abruptly questioned him about what his intentions were: hire? Or get hired?
The number on my Android Nexus had displayed as a “spam call” from somewhere in New York according to the reverse number software. I had apparently missed several calls from this number over the past couple of days.
“I was asked by my CEO to give you a call. We’re an IT company…”
The truthfullness of “Bob’s” claim to his name was under no further doubt.
Unless his parent’s were weird and gave him “Bob” because they were the Asian equivalent of “children of the 60’s.”
“I don’t outsource any of our IT functions, thanks for the call.” I was eager to return to my code.
“No, wait!” exclaimed Bob. “We’re looking to hire your expertise.”
“Oh, I see. What seems to be the problem you have?”
“My CEO looked at your online profile. And he thought you’d be able to help us. We specifically need your IT expertise.”
“What part of my expertise?”
“We are an IT outsourcing company. We have clients that have problems. You can help us solve those problems. We want to establish you are an expert. We have put together this online test for you to take. It should take a couple of hours to complete.”
“We got disconnected.” opined Bob.
“No, I hung up on you.”
Why did I vote leave?
Because the only valid argument anybody could present to me, ignoring all the made up statistics, hyperbole, and bigotry, is that the economy *MAY* not grow as fast as if we stayed.
We would stake a future, any future, on the possibility that we might not have as much money as if we stayed.
I’m a great believer in rolling the dice, and if given the chance, I will always pick the path that is less comfortable, less safe, and far more interesting.
And I will execute my democratic right to do so.
I’ve never been happier in my life than those times when I wasn’t bothering to try and make other people happy.
I’ve never been unhappier in my life than when either I was trying to make someone (usually many someones) happy or when somebody thought it was my place to try and make them happy.
The power of “no” is a powerful word to use.
I have had occasion to use it quite a bit with some people.
Sometimes I would even follow up the word “No” with the words “Fuck off” and that made me even happier.
I created an email filter that shunts any emails with the phrase “looking for” followed by “unicorn|rockstar|genius” followed by “programmer|developer|CTO|engineer” straight to /dev/null
The defining characteristic of my wife is that she is of a generous and giving nature.
Mostly with my time and my money.
The most dangerous trick in the kitchen that I have learned to date is the art of the 90 second dessert.
And unfortunately my wife is aware that I know this trick.
Molten Chocolate Cake
Golden Sponge Pudding
Sticky Toffee Pudding
Lemon Rice Pudding
Wife says “Talk dirty to me.”
I say “I want you to build a social networking website with cross-platform mobile app for 2% equity.”
Seducing her with my awkwardness today.
You can have my six 30″ monitors when you can pry them from my cold, dead hands.
No passwords – no saved games – no mercy.
We reduce the friction to capture a larger audience. But we lose an essential quality due to that transition.
Raspberry Pi dead.
Blew out the power regulators.
Gotta love that certain, quintessential smell that says “You done screwed up, boy!”
I needed an excuse to pop down to the local electronics shack and pick up some replacements.
Multiplying your matrices in the wrong order is the mathematical equivalent of looking for the missing semi-colon in your code.
Multiboxing World of Warcraft again.
Just kicked the living excrement out of Lich King and did it at level.
In other news, it is practically impossible to kill 10 Shamans.
“What we have here is a layer 8 issue, that is bleeding through in to layer 9. Seems the error code being generated has an ID of one zero Tango. That’s one of the more expensive problems to fix. We refer to it as a PICNIC.” says I.
“Why a PICNIC?” asks the client.
Without missing a beat, I retort, “You’ve heard of the problem P != NP complete? PICNIC is a useful acronym for remembering that. It’s a human factors issue.”
A few moments pass.
“Fantastic! When can you start?”
I think I just sold a steaming pile of BS.
I’ve finally lost the fourth Fitbit and my wife has conceded that perhaps we shouldn’t replace it this time.
I do not know how I ever lived without the HumanScale M8 monitor arms.
So much desk space.
So few monitor stands cluttering up the place.
Just got my Incra table saw fence set up after a month of not getting any woodworking done in the workshop. Installed JessEm feed rollers on top of the fence.
Okay, where do I start…
This is pure engineering porn.
I’ve a Bosch contractor table saw that was almost trued up straight out of the box, I just needed to adjust the angle of the saw blade by less than a quarter of a turn to make it cut accurately to within 1/1000 of a degree.
I installed an Incra Tools LS Positioner Table Saw Fence which is mind-boggling accurate. I’ve been cutting strips at a repeatable thickness of 1/64″ of an inch out of walnut and I am just floored by this.
On top of the table saw fence I’ve installed the JessEm feed rollers, and again, these little gadgets are so well engineered I am floored. The workmanship is amazing. Damn, those Canadian aerospace engineers know their shit.
Everything is installed and made accurate, I have been just playing with this setup so far, but I am lost of words at how awesome this configuration is.
The great thing is, because I have only a small workshop, when I need to move my table saw out of the way, I just flip the entire thing up on end and stash it against the wall.
LinkedIn seems to be broken…
You can only add 50 courses to your profile.
How screwed up is that?!?
You know you are living in the future when you can order a VR headset on Amazon Fresh to have it delivered with your groceries. W. T. F… 🙂
You take a new course every month for a few years.
Suddenly you have taken a lot of courses.
Need to add them to my LinkedIn profile.
Oh my gosh! I just learned how to make cheese! That is not a euphemism for anything.
How many times in life do we hold back on attempting something because it is made to look hard?
My wife hides recipes from me.
Before I get to see a recipe in a book she will vet it to determine if it will “compete” with one of mine.
When I found out that she was doing this (about a rice pudding dish), she opined: “But I like your rice pudding just the way it is. I don’t want to spoil my memories of that.”
I first met my wife at a conference in Chicago in the year 2000.
We were so happy for almost 13 years.
Then we got married.
I had this vivid and intense dream where my wife and I were constructing a giraffe stand for the new baby giraffe we had just inherited from my wife’s aunt.
The dream centered around trying to make my wife understand that we had to carefully balance the construction of the giraffe stand against cost of materials and the fact that the giraffe would eventually grow up and the stand would no longer be big enough for the adult giraffe.
Why can you not understand this? Why is it so difficult?!?
I woke up, turned to my wife, said very intensely “We need to build a giraffe stand for the giraffe from your aunt.” and then fell back asleep for another three hours.
I believe strongly in supporting the products I make and sell.
Strong support is a revenue generating feature as far as I am concerned, either through support licenses or because people, and developers and managers especially, will perceive good support as a value add to any product they use.
But I don’t offer support on my giveaway OpenSource projects these days beyond a cursory “I’ll fix it when I get to it” philosophy.
What I realised a few years ago was that most of my time was being sucked up, for free, by individuals and companies requesting fixes to obscure bugs that affected one in five thousand developers (literally!) and features that would only be useful to a handful of people.
Yes, I admit it sucks when an obscure bug affects your day-to-day work and the developer won’t fix it, and even though the source code is available for the taking you don’t have time to fix it yourself.
Yes, I admit it sucks when a developer puts out a project and doesn’t update it for years and support for the latest model hardware falls behind.
I have over 20 OpenSource projects of various types I have personally developed over the years, which are now all hosted at http://code.otakunozoku.com/.
I don’t directly offer support on any of them.
If someone reports a bug or desires a particular feature, I’ll add it to the list of things to do.
And that is about all I will do with someone’s urgent request.
I don’t prioritise any particular task based on a request or report. I have found that this is the only way to stay sane in a world where every person you interact with believes that your TO DO list should be publically accessible and writeable.
The best productivity tool I have developed to date is the word “No.”
In each README of my projects there is now an explicit “No support provided” line that clearly sets the expectation for people who download the software or source code.
I have interacted with a few people who still expect support, even demand it in a few cases, but generally I think it has had a net positive effect on people’s expectations.
“And we can us mixins in Java now!” proclaimed the developer proudly.
Congratulations, your toy language can finally do what C++ did 30 years ago.
Just picked up a Kinect for Windows. Now to start hacking on it. I am thinking of experimenting with some of my eye tracking work I did for mobile phones.
Just got done assembling a nice little “super-computer” consisting of a bunch of NVIDIA GPUs in a rack mount case.
Power-on and self-test shows me… I have way too much computing power and a cooling problem. Looks like I am going to have to route some cooling ducts out of the server closet and through the wall to the outside.
I like this stack of h/w. I shall call it “BabyBlue” for the obvious play on words.
This is just me rambling about nothing at all on a Sunday night, so ignore it if you don’t have time.
I’m currently doing some work with the Unity game engine (great engine, only a few annoyances) and I had to have two copies of Unity open at once.
Unity, when you open the application, will attempt to load the previously opened project. You can stop it from doing this, and pop up the project browser window by holding down a key, which happens to be the ALT key on Windows.
Only problem is, I’m also running with a bunch of 128GB SSD drives in a RAID 0 configuration. I click on the Unity icon on the start menu and before I even touch the key, Unity has loaded and complained about the previous project already being open.
Luckily for me, I can just run the Unity application from the command line and use the “-openfile” option to specify the project to use.
That said, opening up Maya 2010, Max 2010, a couple of copies of Unity, two copies of Visual Studio 2010, and Photoshop CS5 all in a matter of seconds… very nice.
SSDs in RAID 0.
I recommend them.
Client: “The app crashed again.”
Me: “Actually, it hasn’t crashed. It’s just a new way to close the app when you are done using it.”
it’s never stick your dick in either crazy or lazy.
I bet your company has an employee handbook and I bet you have never read it.
I’ll bet some don’t even know that the company they work for has an employee handbook.
And if you have read the handbook, I’ll bet it was only because you were made too.
That’s quite a few bets.
Am I right on at least one of them?
Infinite Monkey Factory, my game development company, is growing up and expanding. With our new projects currently going in to production we’ll hit fifteen full-time employees within two months and with future planned projects for the rest of this year, by the end of 2007 that number could well double.
I’ve been contemplating writing some guidelines for new hires and to ensure that our current employees remember what we are trying to achieve as a company.
One of the tenets of IMF is “Act different.”
I keep reminding people that IMF exists in a bizarro opposite world where we try to do everything differently to almost every other company. I’m trying to give every production position a private office with a door that closes, five weeks of vacation time a year in addition to the regular Federal holidays that everyone gets, required vacation time (IMF shuts down completely between the 24th December of 2nd of January and an entire week at the height of the Summer), employee profit sharing, a democratic company, completely open information, in addition to all of the best hardware and software we can lay our hands on.
So when it comes to the employee handbook we’re going to do it differently to everyone else too.
We’re going to create a philosophy manual instead. I want something like a “Zen and the Art of Game Development” or “Sun Tzu’s Art of Development.” We want the philosophy manual to be something you want to read, and we want it to impart the philosophy of what it is to work at IMF.
And we want it all told in comic strip format.
Maybe Dilbert’s Scott Adams is looking for a new job…
The greatest freedom I ever gave myself in my work is a release from the tyranny of the alarm clock.
Today I woke up at the crack of 1:30PM after staying up until 5AM playing video games.
And it was glorious.
It is impossible to oversleep if you pretend that you live in a different time zone.
A couple of people have mentioned that my personal website (otakunozoku.com) is turning in to a hodge-podge of links and badly photographed pictures of M.A.M.E. emulators running on various consoles.
I’m contemplating turning it around, splitting off the personal bio/resume stuff in to a separate section and making a serious effort to turn it in to a competent game development web site with useful information.
My only problem is that I can’t really spend more than an hour or two a week working on it, so I need to concern myself with the scope of information I cover.
Update: Apparently I’ve been informed that something where you dump lots of random shit, link to other people’s web sites, show off cool stuff, and post interesting monologues is called a “blog.” Funny, I always thought such an endeavour was called a web page.
Marketing Consultant: “Address the chair!”
Ford Prefect: “There isn’t chair, there’s only a rock.”
Marketing Consultant: “Well, call it a chair.”
Ford Prefect: “Why not call it a rock?”
Marketing Consultant: “You obviously have no conception of modern business methods.”
This is not a blog.
I’ve never had a blog.
This page has never been a blog.
If it were a blog then it was a blog before any of you bozos actually knew that the internet existed, let alone knew what a blog was.
Another Update: Reading this 14 years later I now have a name for this outlook. It’s called “hipster.” I apparently “had a blog before it was cool.” Oh dear…
Just closed the first game contract for my new little video game company. I am going to be creating a couple of games for the Nintendo Gameboy Advance.
Rather excited by that.
I have come to the conclusion that in any romantic relationship you should aim to make it as interesting as your first Nintendo games console.
Classic, hours of fun for everyone involved, and every problem can usually be fixed by blowing on it before shoving it back in.
I got a full eight hours of sleep this week.
P.S. “You must be passionate to work here” is just another way of saying “easily exploited.”
I have been told I was dangerous because I didn’t ask permission to do something.
“Did it succeed?”
“Did it help the bottom line?”
“Was it in line with company goals?”
“Did it move our project forward?”
“Is everybody happy?”
“Then what’s the problem?”
“You didn’t ask permission. Initiative is good, but you should ask permission first.”
“I don’t think that word means what you think it means.”
“I could easily add trouble-maker to your HR notes.”
“I think the word you are looking for is irreverent.” I looked over her shoulder at her notes. “That’s two Rs.”
Good bye Wales.
Update: Hello California.
The only guy to step off the plane with a winter overcoat, gloves and two scarves.
Bumped in to “Diamond” Dave from my HND days on the plane. How weird is that?!?
I have a rather expensive digital kitchen thermometer that had died due to accidental submersion in liquid.
A couple of family members had tried to revive it with the usual tricks.
One family member even opened the thermometer up, wiped everything down and tested the circuit inside with a meter. But at the end of it all the thermometer was pronounced dead.
The thermometer was handed back to me with a “Sorry mate, it’s trash.”
Two days later I was about to throw the thermometer out but thought I’d give it one more try.
I opened up the battery compartment, popped a new battery in, and sure enough it was dead.
I pulled the battery back out, blew in to the battery compartment twice, put the battery back in and powered the thermometer on.
The thermometer sprang to life with the usual beep and the screen good and clear.
It continues to work to this day.
Nobody will ever know how awesome I was.