Master of None

Over the last year or so I've been investing a great deal of time to improve my knowledge of both Microsoft SQL Server and MySQL. One is the greatest database engine that's ever existed1, and the other is certainly adequate for many tasks with some caveats. As with many things in life, the more we learn about a specific subject, the less we feel we know about that subject. The vast absence of knowledge stretching before me has me wondering whether I'll ever truly know either of these tools well enough to master them.

The chasm by Kevin Carden

In just 11 months I've read 8 SQL Server and 4 MySQL books that have really opened my eyes to how these tools have evolved since I was last working with databases in any meaningful way. Sure, I've used these tools a lot over the last decade, but I've never really had to deep-dive into the subjects in order to provide better support for the engines. With some recent issues at the day job, I feel there is no other option than to absorb as much knowledge in order to take on the role of DBA, as there hasn't been one inside the organization for quite some time. What I've come to learn through this activity is that a lot of what I've previously been taught as "best practice" is now anything but, and it has me second-guessing a lot of the software I've built over the years. This has me wondering if any of the other "best practices" that I've been following are outdated, outmoded, or just plain wrong.

For almost ten years I set aside software development and database work in order to earn a paycheck here in Japan, where my personality type is generally not welcome within a typical Japanese company. A great deal has changed in that time. The question I need to answer now is how to apply this newfound knowledge without essentially scrapping the work that's been done up to now on both personal and professional projects.

  1. in my opinion, anyways

A Question

A Black Hole Merger

In the model of General Relativity, gravity and light travel at the same velocity. In September of this year the Virgo gravitational-wave detector in Italy made its first detection of ripples in the fabric of the universe when two black holes merged together, warping the space around them and creating gravitational waves that rippled through the universe for 1.8 billion years before reaching us here on Earth.

Theories and models state that once something is beyond the event horizon of a black hole, nothing — not even light — can escape the extreme gravitational forces of the ultra-dense object. But how about gravity? Can gravitational waves ripple from inside the event horizon of a black hole out, or does physics prevent it?

Time and Space

The last few months have gone by in a flash, with people demanding so much time and attention that I've scarcely had time to think about myself or even sit down to read a book for fun. Just about every waking minute has been put to use for some grand purpose with deadlines that are always set in the past, giving an added octave to the sense of urgency others project when discussing these arbitrary dates. I look forward to a time in the very near future when I can just shut the world out for a few hours, sit back, and truly relax with some nice music and maybe a jigsaw puzzle. Anything is welcome, so long as it does not require a great deal of brainpower or interpersonal communication.

Open Field

Many years ago, while living in Vancouver, I would often set aside Sundays as an "offline day". In the morning I'd do laundry and clean the apartment. In the early afternoon I'd buy the groceries I would need for the coming week. Around 3:00pm everything would be done and I'd have a good seven or eight hours to enjoy as I pleased, which usually involved playing one of the many Need For Speed racing game editions. When the weather was nice, though, I'd do something different and head to a cafe in the next town over to read a book in quiet isolation. This was the time and space I would often need in order to "reset" my mind and prepare for the coming week, with all the silliness that comes when working alongside others in a corporate environment.

After moving to Japan, time and space were two things that seemed to be in short supply. That said, after a bit of adaptation, it was possible to carve out a few hours every week where I'd just "disappear" for a while during the day and recharge. This often involved reading a book, playing sudoku, or just people watching somewhere out of the path of traffic.

The schedules as they are now, however, leave very little time for rest or relaxation. I've not been able to give Nozomi her regular long walks anymore, as there simply isn't enough time in the day. This isn't just because there's a new member of the family who wants and needs attention, nor is it the fast-moving house purchase, nor is it the day job and the endless parade of emails and personality clashes that come with the work. Instead it's the expectations I have built into my weekly goals that are no longer being met that's giving me the stress that I would once whisk away with some quiet time. It's something within me that needs to be changed.

But how can I do this without the necessary room to mentally work through the reality that time and space are no longer resources that I have ample of? As someone who tends to introspect and overthink a great deal, this isn't something I can "just get over". That's not how my mind works. That's not how the Selfish Me accommodates lifestyle changes. Instead what I need to do is find a new outlet; a new way to unwind, rest, and relax without asking for several hours a week of alone time.

The question that needs to be answered now is how? ... which will undoubtedly take a bit of time.

Land and Mortgage Approval Looking Good

The last few months have been an absolute whirlwind of activity with the boy at home growing by leaps and bounds, house shopping with every spare minute, and an endless parade of deadlines at the day job. Thinking back to the last few years, it's interesting just how much free time there was! That said, the year of non-stop action has resulted in some pretty interesting developments with regards to one of the most expensive elements of the modern lifestyle dream: home ownership.

Reiko and I have spent the better part of six months scouring property and housing company websites in an attempt to find a place that would be great for our son to grow up. All in all, we weren't asking for much. Any plot of land that we bought had to meet these conditions:

  • be more than 220m² in total
  • be close to good schools1
  • be in a safe area
  • be close to Reiko's parents' house
  • be relatively close to work
  • cost no more than 1500万円 (about $168,840 CAD as of today)
  • face south (important in Japan)

You'd be surprised how many thousands of properties we looked through to find something that meets most of these criteria. The plot of land we finally settled on is slightly larger than 220m² and it's a bit over our budget, but Reiko was able to talk the sellers down a bit so that we could get it for about $5,000 under the asking price. This coming Sunday we'll go and sign the papers that signal we're serious about buying the property, which will then give us a little under 60 days to confirm which housing company we'll hire to build the house and also obtain the mortgage that we'll need to pay for this incredible purchase.

More on that later.

Buying a house in Japan is a little different from how I've seen it done elsewhere. While people can buy pre-built homes that housing companies put up in tight packs, Reiko and I wanted something different. The pre-built homes are certainly cheaper than the route we've chosen, but they lack the personality and space that we would like our home to have. So many of the buildings today are essentially boxes with tiny windows and a door up front. There's rarely any grass on the property unless it's accidental, which makes it a weed, and the neighboring homes are simply too close for comfort. When I look out a window in my home, I don't want to see another wall less than a meter beyond the glass.

Instead, we've opted to buy the land and hire a housing company to build us a home with many of the little customizations that we've looked forward to since before marriage. A nice staircase. An open-concept kitchen. A dedicated workspace for two next to a large window. A yard with grass intentionally growing. These are not impossible requests when buying pre-built, but they are a lot harder to find.

Reiko, being the investigative person she is, has put in a massive amount of effort to find both the perfect piece of land as well as collect information on house makers. I've helped whenever possible, but it really pales in comparison. So after a great deal of legwork, the land is just about ours and we've narrowed our home builder down to one of two — possibly three — companies that can build us something that isn't a two-tone, bland box with slits of glass cut into the walls like an afterthought. Of course, money is something that's an important equation here as well.

Again, Reiko has done a bunch of research to find some banks that would be willing to lend us the money to buy our home. Many personal mortgages in Japan are for 35 years, but neither of us want to be paying for our house until we're 75. It's just bad financial planning. I'd like to "retire" no later than 65, and I'm sure Reiko would like to have the freedom in her 60s to work only if she wants to without the obligations that come with staggering amounts of debt. At the moment we're planning to pay down the mortgage in 25 years at the most, with the ambitious goal to have it completely paid off in 14 so long as we can maintain our current savings pattern. We've saved up about 20% the cost of the home over the last decade, and a good deal of this will be spent in the coming months.

Typically, the home purchase process in Japan works like this:

  1. find a piece of land / find a home builder (sometimes this can be done together)
  2. sign a document saying you intend to buy the land and pay $100 to show you're serious
  3. go to the bank to seek preliminary approval to apply for a mortgage by showing the document for the land you've signed to buy
  4. sign a contract with the housing company to build your home
  5. apply for the mortgage
  6. once approved, pay the down payment to the bank (usually between 5~10%)
  7. pay at least 5% the land price to the land owners
  8. pay at least 5% the house price to the builders
  9. pay taxes and fees to the city
  10. pay the fees to connect the home to the water, power, and sewage lines
  11. once the house is complete, pay inspectors to perform a safety analysis
  12. buy insurance on the house
  13. receive the mortgage amount from the bank
  14. pay the remaining amount to the former land owners
  15. pay the remaining amount to the home builders
  16. pay the previous city any outstanding residential taxes
  17. pay the moving company to move that heavy piano that nearly destroyed your spine two years back
  18. move into the new home
  19. breathe a sigh of relief and take a bloody vacation at the library, because that's really the only thing you can afford

Notice that the mortgage is not actually received until point 13. This is because the bank will not release the money until the house is fit to be lived in, as per Japanese law. What this means is that we're technically asking a company to construct a building on another person's property on our behalf in the hopes that all of the financial stuff will pan out. Despite this, we need to pay the land owners, the home builders, the moving company, the city, and various utility companies out of our own pocket in order to get things done. A lot of people can't afford this and take out additional loans in order to make this happen, but more debt isn't something Reiko or I want to do. Instead, we've saved like mad, choosing to not take long vacations2 or buy that really nice Mazda Axela despite the age and size of our little car.

Thanks to all of this, we might actually have a shot at getting a decent home.

As of this moment, we've made it up to point 3 despite not knowing who will build our home. This weekend we'll reach point 4 and next week will hopefully be the completion of point 1 and 5. This purchase is coming in about 75% higher than I ever thought I'd pay for a home, and the good fortune I've had at the day job has made it possible. After years and years of struggle, life is looking up. I just need to make sure it stays this way for a while.

  1. Ideally these schools would also have kids who had at least one parent from outside the country so that our son wouldn't be "the only foreign kid"
  2. I landed in Japan in August of 2007 and I haven't left the country yet ... though I did come close to doing so a few years back.

Lying Pieces of Trash

How do people who fabricate crap like this sleep at night?

Scam Alert

This is the 8th email I've received like this in the last four weeks, and they all have the same fundamental flaws that just scream "SCAM" in big capital letters. First tip is the address, a place I haven't lived at for over ten years. Second is the "SEO" bullshit scam term, as I'd never sign up for that crap even if my site received 0 visitors per century for its obscurity. Third is the notice number, which matches the seven previous scam messages. The wording is also very much like a past-due invoice despite the fact I've never requested services from the lying-ass jerk wads who sent this phishing piece of shit. Some of the smaller lines are comical, too. This gem stands out:

Failure to complete this order by 10/09/2017 . may result in the cancellation of this offer (making it difficult for your customers to locate you, using search engines on the web). [...] We sell traffic generator software.

My customers know exactly where to find me. That's why they're customers, not shoppers. Second, "traffic generator software"? So ... you're asking me to pay you $86 a year to have bots hit my website more often, further driving up the cost of hosting thanks to all the unnecessary bandwidth that would be consumed?

Just because I've been active on the Interwebs since the 90s doesn't mean I've forgotten how to read.

Then in the easy-to-miss, light-grey footer:

You have received this message because you elected to receive special notification offers. If you no longer wish to receive our notifications, please unsubscribe here or mail written request to Domain SEO Service Registration Corp., Miami Beach, FL 33139. If you have multiple accounts with us, you must opt out for each one individually in order to stop receiving SEO notices. We are a search engine optimization company. We do not register or renew domain names. We sell traffic generator software. This message is CAN-SPAM compliant. THIS IS NOT A BILL OR AN INVOICE. THIS IS A SEO PURCHASE OFFER. YOU ARE UNDER NO OBLIGATION TO PAY THE AMOUNT STATED UNLESS YOU ACCEPT THIS PURCHASE OFFER. This message contains promotional material strictly along the guidelines of the CAN-SPAM act of 2003. We have distinctly mentioned the source mail-id of this email and also disclosed our subject lines. They are no way misleading. Please do not reply to this email, as we are not able to respond to messages sent to this address.

When did I elect to receive these offers? Evidence, please. I will not click a scummy link that only validates my email address nor will I pay international postage and write a letter to a company with no street address. If I have multiple accounts, it's because whatever list they bought or stole containing 8 of my domain names was imported into a crap data system by a n00b who has no concept of completeness. While the footer claims that this email is not a bill nor an invoice, the language in the more easily readable body appears otherwise. Distinctly mentioning a source mail-id and disclosing a subject line does not mean the contents of the message are not misleading. Not being able to respond to messages when people press "Reply" means that the fools who sent this おれおれ詐欺1 clearly do not work for a good company because organizations that send invoice-looking emails only when there are invoices to send want people to contact them if there are questions. It's just good business.

If people want to lie, cheat, and steal their way through life, that's their right and I sincerely hope they drown in a pool of their own spit after being bitten by a rabid bat during a rainstorm. If a person wants to lie to try and cheat or steal from me, they'd better do their fucking homework.

  1. this is a common money scam in Japan where thieves call elderly people pretending to be their children — or calling on behalf of their children — who are in dire straights and need money fast. A horrendous number of people over the age of 80 have lost entire life savings as a result of this scam over the last 20 years.

Skunkworks > Startup?

Over the last few years I've been working on a number of projects that I've hoped could generate enough interest to warrant founding a new business venture, hiring some smart people, and earning a decent income for everyone involved. While some projects have been more successful than others, none have really caught on in any fashion. The two I'm most passionate about — 10Centuries and Green LMS1 — seem to have very little traction anywhere. This could be due to the terrible names. This could be due to the terrible marketing. This could be due to something I'm simply not aware of. That said, what I do know is that I can't really expand on Green LMS anymore without potentially risking my position at the day job, as that project is literally an earlier version of the current project I'm working on for the employer.

All in all, I really feel that Green LMS can have a very positive future given the resources and energy. Schools around the country and all over the world could tap into the various functions that make the system nice — such as the integrated blogging, scheduling, homework submission, and lesson history views — and focus more on the people acquiring skills than the systems they currently use, which either look like something from the late 90s or are completely built on custom Excel files that have evolved over the years. What I'd really like is a block of time to really polish the product, make it available, generate awareness, earn customers, and begin the next phase of the project's development. But how can this be done without upsetting the people who pay my salary?

The term "skunkworks" often refers to a department of a company or institution, typically smaller than and independent of the main divisions. The name was originally given to a team of smart people at Lockheed’s Advanced Development Projects Division during World War II. Since that time, companies around the world have borrowed this technique to give some of their best people the freedom and space needed to solve the next set of problems facing the organization. Could I pitch something like this to the powers that be and successfully acquire the talent and financial backing required to take the LMS to the next level?

This is something that I've been seriously considering for some time. I've been researching the competition, speaking to potential customers, considering layouts, and planing how it would go from being a cost centre at the day job to breaking even. As one would expect, a number of hurdles would stand in the way of the project's acceptance, but this doesn't seem to be an impossible request given the proven track record for the existing project. Senior managers are not so easily convinced, though. If they were to approve the creation of a small team that operates outside the existing structure of the organization — something that's almost unheard of in Japan — then there would need to be a huge payout at the end.

But what would that payout be?

  1. a lesson management system for independent schools

Five Years Since the Switch

Five years ago today I made the switch from Windows to OS X and, while I've not stuck with Apple's preferred OS on my hardware for the entire duration, the move has been incredibly illuminating. It's been said on numerous occasions on this site, but the first computer I could call my own was an ancient off-brand 8088 back in 1994. It was on that machine that I learned how to program in Turbo Pascal and Watcom though a pair of books that were instrumental to my understanding of software development. From 1994 through to 2012 the core ideas in those books were used over and over and over again across thousands of projects, evolving as the field developed new processes and techniques. Core to the understanding, though, was that software should be written for the lowest-grade of hardware whenever possible. We can't assume everyone has the latest and greatest computer on their desk, nor should we make people suffer for our own impatience at finding the most efficient means to solve a problem. While I still very much stick to this core idea as much as possible, the platform switch in 2012 brought about a slightly different area of focus when designing digital solutions, and it's one I'm still actively learning about today.

For the first eighteen years, my primary goal was to create great software that would solve the problem at hand as efficiently as possible. The interface that people would see was often an afterthought, though I always tried to make the various elements line up and look good. After using iOS for a bit and seeing just how important interface design can be, I started to take it much more seriously.

Design is a funny word. Some people think design means how it looks. But of course, if you dig deeper, it's really how it works.
— Steve Jobs

While watching parts of Apple's big hardware release a few weeks back, they played an audio snippet with the above quote from the late Steve Jobs. A lot of people have heard this quote, but I wonder how many people think about it.

At the day job I've been working on a project for almost two years1 where I've tried very hard to think more about how the software is supposed to work rather than how "tight" the code is or slick the interface might be. When designing new functions and features, I try to collect as much information as I can from the people who will wind up using that part of the system because, at the end of the day, they are my customer. The software is used by people across the organization with very different sets of goals so, sometimes, the best solution is to write two or more interfaces that draw from the same source of data, but display the information differently. Sure, everything would work if I were to just make a single, unified view that people could then selectively ignore. But I want the software to actually work ... so I ask questions. Lots of them.

Despite working with software for almost a quarter century, I still feel there is a lot left to learn. Every platform has taught me something valuable that is just as relevant today as it was days, weeks, months, or years ago when I would heavily lean on them. DOS taught me the importance of efficiency. Windows taught me the importance of object oriented coding. PalmOS taught me the importance of resource management. Linux taught me the importance of community building. iOS/OS X taught me the importance of designing tools rather than solutions. The web taught me the importance of picking a standard2 and sticking to it. The next area I expect to work in will involve a great deal of voice interaction, and I look forward to the evolution in thinking that move will bring.

  1. it's really hard to believe this much time has passed already
  2. there's an XKCD joke in here ...

The Things We've Done

One of the many questions I like to ask people over a caffeinated or alcoholic beverage is "What are you most proud of doing?" It's a uniquely personal question that generally results in people thinking for a moment, exhaling, and responding with something along the lines of "I don't know". Very few people have an immediate answer for this because — for reasons I'm not entirely clear on — we don't seem to enjoy our victories for very long. Yet when we look back at the things we've accomplished in our lives, how can a person not be genuinely proud of a few things they've accomplished?

Hideki, the houseless person1 who has lived under a nearby bridge for the better part of five years, managed to get himself some stable employment at the start of the summer working for the city and cleaning parks. He was incredibly happy and soon moved into a cheap apartment on the south side of town. With autumn upon us, the city has let him go and Hideki has once again taken up residence under the bridge for the winter. I asked him why he's chosen to do this, and he explained in his meandering, rambling way that his neighbors are friendlier ... and he likes that there are generally more steel and aluminum cans to collect for recycling in the area than other parts of town.

He's happy where he is, and he says he was proud that he could keep a steady job for an entire season for the first time in years. What he's told me of his past was generally not pretty, but his present is exactly what he wants it to be. We should all be so lucky to be happy with our circumstances.

When I think about the things that I'm most proud of, I struggle to answer why I'm proud of these accomplishments. They're not particularly amazing, nor have they changed the world for the better (yet). Despite this I'm genuinely happy to say "I have done this thing to the best of my ability" and leave it at that. I wonder if this is the case for others as well.

  1. Hideki has told me many times that "his bridge" is his home, so he's not homeless.

What Makes a Good Parent?

While this may come as a surprise to some, I've not been one to have a particularly high self esteem. I rarely feel I am worthy of any sort of praise, nor do I feel particularly intelligent or skilled at anything. I can do enough to get by, and in the few areas that I excel at, I tend to do a little better than people who are starting out. Despite working in education for a decade, I never felt I was a particularly good teacher, and despite writing software for over 20 years, I do not feel I am particularly amazing at it. These are just things I have done and tried to do well, failing hard and often along the way. This is to be expected, though, as I am a human fraught with failings.

Over the last few weeks my son has continued on his quest to learn about himself and the world. He's been able to "say" things like "mama" and "ba-buuu-pfffhhhh". He's learned how to sit up. He's learned that bananas are sweeter than carrots. He's learning how to crawl. Did he learn any of these things from me? I don't think so. Has he learned anything specifically from me? I don't know. It's hard to tell, really, as he's unable to comprehend my questions or construct cromulent answers that consider what was before to what is now. Asking such a question would be unfair, too, as he's just a kid unaware of the underlying question that I am really seeking to find an answer.

Ultimately, I want to know if I'm being the best parent I can be. I want to be part of my child's life, but I don't want to be an ever-present entity that stifles his independence. I want to show him the incredible richness and depth to the plethora of questions people can ask without boring him senseless by delving way deeper into a topic than he wanted to go. Is my attempts to play with him before he understands the concept of play a good thing? Is my insistence that he not play when eating food a bad thing? The boy is almost 9 months old and I've yet to discipline him for anything. Is that a good thing?

When I think about my parents and how they raised me, I ask this question of them. Did I have good parents? I think so. They did the best they could with the resources at hand. They sacrificed their own goals to raise my sisters and I. They struggled in silence when trying to pay all the bills on time while also providing all the necessities that kids take for granted. There is always food in the cupboard, clean clothes in the dresser, and electricity for the TV ... right?

Even today when I think about my parents, I think they are considering what's best for me while I live on the other side of the planet from them. There are occasional calls and emails, but nothing too excessive. There is no forced expectation that I circumnavigate the globe to attend an event, nor is there even a strongly worded message saying that I should do more to keep in touch with my scores of cousins, dozens of nephews and nieces, or handful of siblings. The distance I feel from the family I grew up with is just right.

Will I be able to provide this same level of comfort to my son and any potential siblings? Will I be able to give him what he needs without becoming a nuisance or appearing disconnected?

A lot of these questions are born from the Demons of Self-Doubt who whisper endlessly in my ear about how useless and stupid I am when compared to the whole of humanity, as if one person could be "better" than 7-billion others and still appear well-rounded and normal. Yet they're hard to ignore. I would like to be a "good" parent. One who gives their kids freedom to make safe mistakes to learn from, while also being a source of encouragement and knowledge. I'd like to teach my kids the crucial skill of critical thinking in the hopes that they use it to navigate the minefield of bullshit that is adult life. I'd like to give my kids the confidence I have not had since I was 19 an innocent of the evils that drive men to do what they do.

But can I do these things? It took me decades to learn who I really am. How long will it take to learn about any new people who share parts of my DNA?

These are undoubtedly questions that many parents ask themselves.

Recommended Podcast: Levar Burton Reads

Levar Burton Reads — Banner

Over the last few weeks I've been looking for some new podcasts that focus on the art of storytelling and stumbled upon Levar Burton's new show, Levar Burton Reads. Mr. Burton is famous for his role in Star Trek but he's also well known for his passion and advocacy of literacy. I remember when my siblings were much younger, we'd have the TV on PBS and every afternoon Reading Rainbow would come on and we'd see Levar showcasing a book and telling a story. While I didn't need any encouragement to pick up a book and read, there are many who fell in love with reading because of the children's show.

Levar Burton's podcast doesn't cater towards a younger audience, though it would likely be enjoyable for people of all ages who genuinely enjoy stories. In every episode, a short story is chosen and read to the audience. On each side of the reading, we hear what the story means to Levar and we're encouraged to really think about it as well. It's a wonderful listen.

There are 12 episodes as of this moment, and a new one comes out every week. If you enjoy stories, I highly recommend you give it a try.

  1. 1
  2. 2
  3. ...
  4. 254