Stealing From Monks
That's right, forced quarantines are more than just inconvenient. They point out the key similarities between artists and monks:
I think, too, isolation can teach us a few things about how we choose to see ourselves. My schedule now isn't too much different than before COVID-19; we'd been setting up shop and paperwork and training for months and then this hit. Not gonna lie, I felt stifled and stinted the first week. Then I thought--OK, what can I do now that I wasn't doing before? How can I feel really good about the time I've been given?
It usually helps to listen to smart people.
All of humanity's problems stem from man's inability to sit quietly in a room alone.
What To Do In A Quarantine
Quarantine or not, I don't see how any of those things should be separate from any artist's life. What I really mean by 'game development' is what I really mean by any art we set down to do. In James P. Carse's Finite and Infinite Games, he quotes Rank as saying, "Artists do not create objects, but create by way of objects." It doesn't matter what tool/objects we are using (paint, game engines, words), its what we create by way of them.
But if we don't sit down with them and them alone (bypassing what Pascal calls divertissement, i.e. little distractions), and if we don't have a singular goal, and if we don't believe we are the kind of persons that are capable of that goal, how can we complete anything?
Nobody really has a problem with completing things. Think about it. We all wake up, eat, work, talk. We learn an entire language by the time we're five, as well as how to walk, run, live in the present moment, and strike bargains. We equate responsibility with tying us down when really the only thing we've ever done our entire lives is be responsible. We are responsive creatures. If we weren't responsible, we wouldn't have made it this far.
The thing is, as we get older, we choose our responsibilities. And the types of responsibilities we choose depends on how we see ourselves.
Do you see yourself as an artist? As a game developer? A writer? A friend? A good person? If not, why do you expect the results of an artist or a saint?
There's nothing easy or flippant about this. It's difficult to have faith in things we can't see; that's why jealousy strikes intangible relationships, and envy intangible works, and worry intangible futures and guilt intangible pasts. You'd have to believe in something--yourself, your project, your future--to accomplish anything. Most of us only believe certain limiting things about our present and that's about it.
I'm still in the middle of untangling this myself, but what better time than during a semi-quarantine?
And what better way to develop my art that to start believing I'm an artist and then make art?
Complimentary Courses Now Available On Unity Asset Store!
All users now have access to 3 months of complimentary courses.
100 Projects, Continued
This week I'm going through this course. While Unity no longer offers certification tests for developers (and most studios don't care if you have a certificate as much as they care what you've done with your skills), I think it's a great overview of the engine. It's like an interactive manual. So next we'll be moving into projects made in Unity.
(Frost will be revisited after we've learned a few more bells and whistles).
Till next time--glad you were here.
In Excelsis Deo.
Codewise, this project is way simpler than our Consignment Shoppe Demo. Probably because the Demo was coded by a professional and this one was coded by me.
Today we've got a simple Mad Libs console application in C#. It uses random, switch case, an array, Console.ReadLine, Console.WriteLine, and a loop.
I enjoyed doing this from scratch and having a finished product in less than an hour!
Here's the Code:
Arrays and Switch Cases:
The main hurdles were making sure the array, switch case, and random variable worked together. I may have cheated a little, but in order for each of the switch cases to match up with the appropriate author in the array, I put in a dummy string "" for the first array index. Without this dummy string, the random.Next feature would pick, say, Virginia Woolf, who is Case 5, but because Arrays index starting from 0 instead of starting from 1, Virginia Woolf was actually considered Case 4, so the text was off by one.
There's probably a better way to do that, but it worked, and this is all learning curve right now.
Instead of just one determined writing sample that plays out the same each time, I wanted to create a relatively tidy index of random writing samples from famous authors: Willy Shakespeare, Jane Austen, Homer, Virginia Woolf, Herman Melville.
So I created a random variable, gave it an index, and plugged it into a switch case--all things that would still have sounded like mumbo-jumbo about a month ago.
Clean Up On Lines 17, 18, 19...
Reminded of the importance of spaces when dealing with multiple lines of strings. The things you take for granted!
It's still not perfect, but at least it reads a little more clearly!
Replay Or Exit:
Had a bit of a time with this one, and it's still not the clean exit I want. But I learned the importance of method parameters. I originally had everything in the Main method, then realized I couldn't easily ask the user if they wanted to play or exit. So I put the main game loop inside a method called Start and then allowed the player to either choose to play again or exit. The exit still goes to debug mode instead of closing down the console, but for some reason neither this.Close, Application.Exit, or Console.Close/Exit/Whatever seemed to be recognized.
But the point, this baby is finished, and I know what areas I need to work on.
The writing samples used in the application are from the following:
1. Shakespeare's "Much Ado About Nothing"
2. Jane Austen's "Emma"
3. Herman Melville's "Moby Dick"
4. Virginia Woolf's "Orlando"
5. Vince Lombardo's translation of Homer's "The Odyssey"
Glad you were here; till next time!
In Excelsis Deo.
Making A Screen Saver in Visual Studio #C
Last week, I "completed" this screensaver tutorial. Can't say I completely understand everything that was going on (plus I couldn't get preview mode to work), BUT, it still demystified the following things for me:
Gotta admit, it was a thrill going back over some of the code he had written and suddenly going "A-ha!"
I still couldn't have come up with the code itself, but my ability to read and comprehend is getting better, bit by bit.
Riddle Me This
We talked about programming sub-skills a few blogs back, and we came to a conclusion: puzzles. Mental gymnastics, learning how to learn, puzzles, riddles--yes, good. Good for budding programmers.
So I started doing Sudoku puzzles. But going beyond what I used to do, actually looking into two things:
1) Mental techniques for improving my form/efficiency (I turn off the clock on my Sudoku app, but I started caring about the time it took me to complete a puzzle, insomuch as I wanted to improve each game and not just coast through each game for entertainment purposes only)
2) Focus (being able to focus on just this puzzle from start to finish, no interruptions)
And there's a third thing hidden in there:
3) Problem solving
Mental techniques, focus, and problem solving: all of them sub-skills for programming.
I couldn't believe it took me an hour to finish my first Sudoku puzzle. It was only on moderate difficulty.
But the second time, it only took me twenty minutes.
And then I couldn't believe the improvement. I even noticed that I was feeling much less foggy within a week of starting the exercise.
The idea of completing Sudoku puzzles actually came from V. Anton Spraul's book, Think Like A Programmer. In it, he also mentions a gem by the name of Sam Loyd.
I mean, just check out this guy's dedicated web site.
Sam Loyd was an early 20th century puzzle pioneer, and his puzzles are just beautiful to look at. I went ahead and ordered a few of his collected riddles and puzzles, figuring they'd make great keepsakes and handy tools for sharpening my rusty problem-solving skills.
So, I guess the lesson from this practicum is: strengthen your mind, not just through programming. Especially when actually being able to understand programming, let alone being able to program yourself, can be slow goings.
Bonus: Things I Tried To Make Learning More Automatic and Organized
1. Defining My Environment
The same computer I use to write short stories, browse the internet, check emails, and play video games is the same computer I use to work on my projects, take tutorials, write my blog, and watch lessons.
Oh, and it's also in the room where I read and sleep.
Needless to say, some days the temptation to noise and distraction is overwhelming.
So I tried two things.
I made sure all my clothes remained in my closet, at least 80% of the time.
I lit a candle every time I had trouble focusing on just coding.
Keeping my room an average level of clean kept me from anxiously nitpicking it or anxiously ignoring its faults. And lighting that candle served as a signal to my brain that it was time for one specific thing.
2. Getting Up At The Same Time Every Day
I really struggled with brain fog between Blog #5 and Blog #6. So I did what I knew I should have been doing all along: regulated my sleep schedule.
This is easier said than done. I should say I wake up at relatively the same time every day. And that this one is a work in progress.
But I decided that this task was important, even if it felt only tangentially connected to my more passionate goal, which was to wrap my head around the concepts we've been exploring. I realized, however, that I was chasing stimulation instead of results.
And it's hard to admit, sometimes, that results are a product of time and, not, strictly, productivity, or what passes for productivity.
So, I've made consistency a priority, even if its slow goings.
3. 30g of Protein within the first 30 Minutes of the Day
Sometimes I really don't want to do this one (and, um, sometimes I just don't do it), but I know its results first-hand. I started this habit way back in high school and the results spoke for themselves: I lost weight, gained energy, and had a habit I could rely on.
So I retuned this habit recently, taking Timothy Ferriss' advice to eat 30g of protein within the first 30 minutes of waking up. This is one of Ferriss' MEDs (minimum efficient dosages), or the least you can do for the most results. In this case, eating 30g of protein within the first 30 minutes of waking up is a two-fold no-brainer:
A. It regulates fat like nothing else. Without changing anything else in their diet or exercise routine, obese practitioners who put this habit into daily usage saw a monthly increase in weight loss (Ferriss' own dad went from losing 5 pounds a month to 18+ pounds a month from this ONE thing alone--he didn't regulate any other part of his diet and he didn't start hitting the gym).
B. It regulates mood. Some days I'd be fine skipping breakfast--could even feel heroic. But the compound interest would result in a few inefficient, foggy days about a week later--it almost always works like that, doesn't it? The results of our decisions can feel so delayed it's hard to say what caused the sudden lag.
4. Putting A Win At The Beginning of the Week
Ray Bradbury once told struggling writers to aim at writing 52 short stories a year, one for every week. I mean, you can't write 52 bad short stories in a row.
Realizing that the first week of January had yet to pass, I thought--why not? Some would be prompts, some would be flash fiction, some would be just for me, some would definitely be aimed at contests and publishing.
Then I made one more caveat: I'd make sure I got the story done at the beginning of the week. Monday or Tuesday, using Joyce Carol Oates' advice of just writing the rough draft in one complete gulp. "You can edit for weeks afterword." Well, hopefully not, but as weird as it sounds:
We're going for quantity over quality this time around.
And I'm putting this goal at the beginning of the week so I have psychological goodness running through the rest of my week. When I'm struggling with making progress or staying focused or skipping breakfast or some other misstep, I can think--"Yeah, but I finished that thing."
And I finished that thing today, y'all.
It feels good.
Bonus Bonus: A Good Read
Great interview from game designer Chris Avellone.
In Excelsis Deo.
What follows is all the things this author has failed at.
I feel cheery as I type this. Like getting ready for a tall glass of cold water after a hot, muggy, impossible day. Like a nice rinse on top of it. Getting cleaned up, clothed, rested, before putting on brightness and warmth and trying again, more humanly this time, until we need to take a glass of water and rinse off all the non-human stuff again. Non-human stuff. Bitterness, polemic, sarcasm, curses, regret.
The rite-of-passage for children becoming adults is, increasingly, no longer a valid driver’s license or a road trip or a hair on your chest—it’s nodding sagely at the notion that “we’re only human after all.”
Only human—as though joy or satisfaction or a small job done well were not the most human things.
So that’s why we’re admitting our failures right now. To stop identifying with the failures. We’ll end up admitting them again. I want to rinse this stuff off and try again. And not have any baggage when it’s time to learn something new.
Failing upward—I like succinct phrases like that. But here’s more a mouthful, more a fine broth that gets better the more you let it settle and simmer:
Jakoś to będzie.
Yakosh toe benjay.
That’s Polish for (essentially): “Act, without worry, for it will all work out in the end.”
An active (act without worry) and a passive (it will all work out) promise. Works and Faith.
Let’s start again, listing times we’ve acted and failed, because we’re going to act again. Without worry. For it will all work out in the end.
Here’s the Author’s personal professional failures. The reason for listing these isn’t to throw a sad Internet party. Like I said before, this is all about the cleansing effect. There’s another word for that, a Greek word: catharsis. Catharsis is the “cleansing and purging of the emotions.” It’s that feeling of your feelings being in order after watching a good drama or laughing with friends.
Of course, stories do catharsis best. That’s what stories are for. So I hope you find some hope from my story.
The formula is: A) list a failure, B) list a rewrite of that failure, C) try and do the same with yours, D) list your small and big wins too.
1. Wrote three uneven novel manuscripts, started but never finished dozens of short stories, and the only thing I’ve submitted and had published were two poems.
Rewrite: Finished three novel manuscripts, actually finished two or three short stories and learned lots of writing practice from the rest, decided that I wanted better for myself so now I’m pushing toward a deadline for a short story contest at the end of this year, and hey! Someone actually published my writing.
2. Started learning coding on Udemy and then stopped. Twice. In fact, I’ll link the course. Each time I keep stopping on the choose-your-own-adventure section, because I’m a perfectionist and I want to create a story that I can show off (on this website).
Rewrite: Nothing is stopping me from finishing that Udemy course. And it’s what got me started on this game dev journey in the first place. Without it, I might not have tried to self-teach myself at all.
3. Tendency to pick up hobby for a number of weeks and get through 2/3 of a course or a book and then stop for a few months, in pursuit of another hobby I left off a few months before that, leaving gaps in learning and feeling like a perpetual intermediate beginner.
Rewrite: I’ve now started a blog where I have a lot less leg room to go traipsing off into the woods, and, if I do go off the beaten path, I can document what I learned here and have a bread crumb trail back to the main path when that particular jaunt is done. I’ve created a new paradigm to get stuff done in. And though I’m ready to learn things in a faster, more organized, thorough manner, at least what I’ve learned so far is still there, a thin foundation, a few steps closer than I was before I started any of this haphazard learning. And learning is learning is learning.
4. Quit my day job, had a plan, tweaked the plan, forgot the plan, still don’t know what I’m doing.
Rewrite: Got a new job that’ll let me meet new people and still leave me time to write and learn. Adopting a new mindset: jakoś to będzie. Will be honest about my mistakes. Don’t see myself staying in a slump. Patience.
5. Moodiness. Inconsistency. Not walking the talk.
Rewrite: I know what I work on. Consistency is all about right now, day-by-day. I’m walking the walk right now. And when I’m moody, I can always listen to “Fresh” by Kool & the Gang.
That list could be longer, but it doesn’t have to be. That’s the sum of my main mistakes, and I’m sure yours fall in the same types of categories. Not my categories, but your particular habitual categories. Maybe you struggle more with workaholism, or not taking yourself seriously, or you simply don’t have the time to pursue your dreams right now, because you’ve got people to take care of, and it’s going to take some time to work things out.
Jakoś to będzie. Jakoś to będzie. It will all work out in the end.
In Excelsis Deo.
K.W. writes novels, short stories, the occasional ode, game scripts, and (with actual evidence!), this here blog.