Posts tagged 'personal philosophy'

My mantra-in-testing right now is "Seek Pain." It's a reminder to always try to be doing something that is hard or causes you anxiety or stress, to make you better, so that the next level skills will come sooner and faster. So, do something until it becomes a habit, and then it won't be nearly as scary, and the harder thing won't appear insurmountable anymore.

Today I realized that I've been living my life in near-constant low-level anxiety for more than a month, and I haven't felt this good in a while.

So, to the world: You can't do anything to me that I'm not already doing to myself.

Years ago, I was having a fight with a girlfriend, and when things had settled a bit, we had a level-headed conversation about what I needed to do.

One of the notes I wrote myself was to the effect of "Learning to ask for help, and getting it". Meaning, when I had problems, I expect(ed) to be able to deal with them myself, but that's not how being alive works. No one really get anywhere themselves.

A couple years ago, my boss sent me a curt email saying that I needed to start asking people for help earlier on in the troubleshooting process, because it can save time. There's a balance between being helpless and always asking others to do your work for you, and never asking for any help. This is, basically, knowing the right time to ask for help even though you could solve your problems on your own.

I was taking some pride in never asking for TA help on solo days, because there was never any problem that took longer than a couple minutes, but there were always more problems.

I write about the future of schooling, and how teachers and TAs are education multipliers: they help lead students to good avenues of attack, and know when to step back and let them struggle a bit.

Last night, I asked Jonathan for advice on an issue with the assets pipeline, and over the course of three quick interactions I was able to generate the behavior I wanted. (Why does every problem fix, including home DIY work, seem to require three tries? Is there some truth to fairy tales?)

There is no intrinsic virtue to being able to do everything on your own, because the guy who doesn't have that hangup will far surpass you, even though you might feel more self-reliant.

For unto every one that hath shall be given, and he shall have abundance: but from him that hath not shall be taken even that which he hath. (Matthew 25:29)

Yesterday I was looking up an old contact (who is a lot like me, but much further along, and with enough money to not have to care), and the memories came back in a rush. It's hard to sum up what anything is, what any experience is like to people who aren't you, but I can mention one thing, the thing that I needed to read.

In this essay, he talks about how he writes. He has an easy writing style, and apparently people come to him and ask him how he writes so well. His response is that he deliberately writes what is easy and approachable (e.g. that which he knows a lot about), and in time the other things he wants to write get easier. He tackles those in their own time, once he has enough practice/warm up/etc. under his belt for those to be easy to write.

Like others, I write darlings, and it's hard for me to kill my darlings. It's pleasing to me that when others proofread my work, they point out problem points in the same places I see them ("Oh, this is no good… I'll leave it in for now, though…" "Yeah, this is no good, you should change this/take it out/jump in a lake"). That's not to say that I always know how something needs to be changed, only that I recognize weak spots.

Anyway, all this comes together into some thoughts about skill generation in general. Writing and graphic design and programming aren't so different in many ways, ways that could fill a book, which is not particularly surprising given my philosophy of "everything is everything". In keeping with the spirit of this entry, though, I'll point out that when you stumble in your craft, the best thing to do is keep working on something.

Admittedly, you will need time to let your brain process. When you make a typo and overlook it for an hour straight, that's usually a sign that you need to do something else, like run on the treadmill for an hour, drink heavily, and pass out. (By morning, all your problems will be much shallower.) There is a route to maximal learning and maximal skill development, and it doesn't typically involve doing the same dumb thing until you're too tired to do anything right, and by the way, you've just spent an hour anti-training by practicing bad habits.

It's been a long couple days, for no particularly good reason. I've actually made a lot of important progress—note here that I'm not saying a lot of progress, in an absolute sense—in getting my head screwed on straight and doing important work. I talked to a lot of people, in different contexts, and these low time, high value conversations are really great for figuring out what I want, and need.

I started sketching out a book that I want to write in parallel with the book I need to write (because my battery died and I had a long train trip, oddly). I think this book will feed into the book I've been trying to write for the better part of three years, if I can make some headway on it. Meanwhile, I have my eyes on a half dozen pet projects that can help strengthen my portfolio. None of them are small enough to sink my teeth into at the moment, and none of them are dire, but like writing, the act of thinking of pet projects leads to thinking of more pet projects. I still need to figure out how to have a brainstorming repository, since every time I start something it all just gets more fragmented, but that should come in time.

Ugh. In other news, I'm wrestling with some asset pipeline issues with heroku, and I'm about to tear my hair out. It's distracting me, and thus I'm not able to give enough attention to writing this. I know there's more I wanted to write, but I have a hard deadline tonight so I'll have to pick this up later, if I can find the track again.

"Never dine alone." There's a purpose to this: if you're dining, you should seek to share food with someone whose social bonds and career trajectory might benefit you down the road, or with someone you could mentor in some way. In all aspects, you should seek to dine (that is, eat out) with people who can enrich your life, and who can benefit from or provide benefit to you through the social bonds created by the ancient rites of breaking bread together.

Jesus said:

"You are the light of the world. A city set on a hill cannot be hidden; nor does anyone light a lamp and put it under a basket, but on the lampstand, and it gives light to all who are in the house. Let your light shine before men in such a way that they may see your good works, and glorify your Father who is in heaven."

Genius works the same way. Somewhere in the universe is a creature of an alien species that knows the answers to the problem you're working on, but just as his knowledge does you no good in your life, knowledge you don't share with others does them no good in their lives. People work better in messy offices, where ideas can cross-pollinate and you can (hopefully) find someone who speaks a dialect of the language of your problem, and skip out on a lot of the infrastructure that would accompany writing.

In general, a good intellectual peer allows you to do what I've heard referred to as "skip talk": you skip a lot of words and ideas because your companion indicates, using non-verbal and sub-verbal cues that they see where you're going because they've already been there. So you quickly get to the meat of the discussion, and gain a lot of ground there because that person can help you recognize which ideas are worth pursuing.

Once you create something, though, you should polish it to a point that someone who doesn't know you and doesn't necessarily like you can understand it. This is the work that happens alone, for the most part, and that which most resembles "work". The endless polishing, cleaning up of ambiguities, and presentation of data in an understandable format for all to see takes a lot of time, but this is where true genius lives.

Today was the .css assessment, and after working late (and falling asleep while working a few times) and doing the practice twice, then studying the solutions last night and this morning, I kicked ass.

To summarize: good design often has a logic, and good instructors are consistent, almost without fail. If there are exceptions, they are for a good reason - your instructor is working at the forefront of the field and the rules aren't established, the design language you're working with has some foibles that you have to work around.

In our case, I've managed to pick up on and benefit from the design habits of our CSS specialist, Jonathan, and have slowly been trying to incorporate them into my own design language. For instance, set consistent (and generous) margins/padding, keep visual space symmetrical, tend to favor making item borders on the inside and container borders on the outside, … and so forth. I haven't built all of this into my site yet—it still looks like baby's first webpage, although thankfully not as 90s as all that—but there are a lot of things coming together very quickly.

Case in point: investing in figuring out backbone means that I've basically added three full collections, three full models, and half a dozen views to my app today alone. I also added two utility … packages? files? to my app that enable some neat stuff, one that makes my life easier, and another that enables a pretty cool "live search" feature to the website.

Yeah, it's all pretty silly overall—I'm reinventing the wheel—but I know why and how I'm reinventing the wheel here, which is okay by me.

There's very little of what I'm doing that is really challenging now, which is okay after the weekend. To use a workout metaphor, this is my plateau, where I'm consolidating gains before looking for more of a training effect. Again, I'm okay with that.

Meanwhile, I'm able to explain to a lot of people what their code is doing wrong, or able to sort through arbitrary code and understand it pretty idiomatically; I'm much more confident with git and am aliasing my most common commands regularly, and can find my way around Atom like nothing.