00:00
00:00
View Profile BoMToons
So many times, it happens too fast...you trade your passion for glory. Don't lose your grip on the dreams of the past, you must fight just to keep them alive.

38, Male

Software Engineer

Somewhere in Nevada...

Somewhere in California..

Joined on 11/29/05

Level:
38
Exp Points:
15,566 / 16,030
Exp Rank:
1,119
Vote Power:
7.92 votes
Rank:
Police Officer
Global Rank:
15,696
Blams:
242
Saves:
374
B/P Bonus:
10%
Whistle:
Gold
Trophies:
34
Medals:
1,088
Supporter:
2y 4m 28d
Gear:
17

BoMToons's News

Posted by BoMToons - 3 weeks ago


iu_10433_1405066.png

As you might have noticed from my past blog entries, I have a new job as a software engineer at a company in San Mateo. Getting the job was a crazy story, but now I've been here for about 7 months and I wanted to share some of my growth experiences in a somewhat more-technical post.


First off, if you're at all into becoming a better programmer (or even if you're interested in starting to code), I recommend the book "Design Patterns: Elements of Reusable Object-oriented Software." It has very practical examples of how to organize and structure classes of code for flexibility and maintainability. It's not overly-technical and covers pretty much every essential design-principle for application structure. It helps you recognize patterns in component interaction and then to design methods of interaction that make your life easier in the long-term.


iu_10434_1405066.jpg


If you know my background, I am a "self-taught" programmer - meaning I'm actually more of an artist that began dabbling with code and "machete'd" my way through learning how to make websites and video games over the course of a decade without taking any formal classes. So, a lot of my computer science fundamentals are prrrrrrreeeeetttttyyyyy rough... which is why I need to read books like this pseudo-textbook in my spare time to try to backfill some of those missing foundational concepts.


Which brings me to the main topic of this post: The Angular 2+ Javascript framework!


iu_10435_1405066.png


This is what we use at my work and into which I've been doing some, increasingly-deep, dives over the last 7 months. I'll preface this post by saying that I am BY NO MEANS an expert with Angular, so if you know Angular and can correct/clarify anything I say, I welcome your input! Because of my background and lack of CS know-how, this explanation will be free of a lot of technical jargon, which might just make it easier for you to understand than if a CS-major had written it!


As an introduction I'll talk about the history of Angular: It's made by Google. It started out as Angular 1.x also called "Angular.js" which was a JavaScript framework similar to React.js or Vue.js. Angular 2+ (now on version 7) Is a re-imagining of Angular.js from the ground-up with a MUCH more-robust class-based architecture focusing on object-oriented design. Most, if not all, of Google's most recent applications are made with it (as well as a lot of other big-time websites).


iu_10436_1405066.png


Now for some more technical stuff about what, exactly, Angular is: It's a "framework" that takes a bunch of files and "flattens" them out into a set of .js (and other) files that are included in an html page in order to simulate a typical "page.html --> page.html" (or page.php --> page.php, or whatever you might be used to) experience, but without EVER actually changing pages! (it even does internal "routing" so the url in the address bar appears to change and allows users to return to specific states based on the URL).


I know, that sounds crazy, but it's somewhat analogous to back in the day when there would be "All-Flash" web pages which were really just one page with a Flash file doing all sorts of inner magic to show new content. This is the latest trend with websites where the goal is to simulate more of an "app-like" experience steering away from the synchronous page loads of the "old web."


So, Angular basically hijacks or obfuscates all of a page's content inside of its own set of rules which include built-in methods for loading data asynchronously. This "middle layer" called "Angular" gives developers really simple ways to access powerful features of JavaScript in intuitive ways. Things that would take hundreds or thousands of lines of code are simplified into simple "built-in" methods. Angular is a great "middle man" for modern web development.


I'll give you some examples of what impresses me about developing with Angular:


1. Components:

When I've coded in PHP, I generally abstract things such that I have a "global" file of functions which I can include in any .php page and then use as a kind of "library" of tools such as "showHeader," "showFooter," or "drawImage" (for example). While that is a choice I made when coding in php, Angular kinda formalizes this approach in a really cool way called "components."


Basically, Angular simulates typical html tag structure like


<p></p>

--


but allows you to DEFINE your own tags! (it also includes ALL existing html tags, so no worries friend!) Using my example above of "showHeader()" being called from an included .php file, I just use a


<header></header> 

--


"component" which is an encapsulation of a bunch of code to draw my header. And, rather than having to write out "require('global.php');" to gain access to my toolbox, after you define a component, it's available from ANYWHERE. Your components can be as broad or specific as you want, so it can make ongoing development SUPER streamlined if you approach your component design wisely.


2. Promises:

Promises are a feature of all the latest versions of JavaScript, but I was introduced to them via the Angular framework, so I'll discuss them here. Basically, they're a simple way to do asynchronous operations that guarantee the ordered timing of the returns from those operations. So you can do something like:


getSearchResults("newgrounds").then(() => {
	showSearchResults();
}).catch((e) => {
	displayErrorMessage(e);
);

--


Which can hit an external asynchronous getSearchResults.php script or "endpoint" (as I've learned to call them) which "resolves" the promise when the script's results are returned and only then continues on to the next step inside the ".then()".


The cool thing about Promises, besides how simple they are syntactically, is that they can be "chained" so you can have multiple asynchronous "steps" in a process, each resolving "in-order" and executing related-code at each juncture.


3. TypeScript

The scripting language of Angular is not actually "JavaScript" it's something called "TypeScript" which compiles into JavaScript when you flatten your app down for publishing. TypeScript conforms to a "standard" of scripting (kind of like how schools have state and national "standards" that individual states or schools choose to "adopt") called ECMAScript and is updated along with the latest ECMAScript releases.


iu_10438_1405066.png


Fun fact, ActionScript was also a language conforming to ECMA (European Computer Manufacturer's Association) standards which is why it's so similar syntactically to JavaScript. I guess lots of languages follow ECMA as a "standard" for what features a language has and how the syntax is written to perform certain functions.


It took me a bit to understand this, but basically a bunch of CS people get together every year and argue about what makes the most sense for a language's syntax, they make decisions and write up standards, then all these languages (including "JavaScript") choose to "adopt" those standards. Something similar happens with web browsers with W3C (World Wide Web Consortium) standards that Chrome, Edge, Safari, Opera, and Firefox choose to "adopt" or comply with.


TypeScript ups the game of typical JavaScript mostly in that it is "strictly typed" meaning you have to explicitly declare the scope and type of variables and functions or else the compiler complains at you or refuses to even try compiling your code. In the end, this makes 2 things possible (that I've seen) - developers are forced to write code that is more-easily understood by other developers, and the associated IDE (code editor) is better able to warn you when you're potentially writing bad or dangerous code.


4. WebPack

WebPack is the thing I'm talking about when I say "flatten" your Angular project. It basically takes a bunch of inter-related .js (and other) files and compiles them into a smaller set of files you upload to your web-server. It optimizes everything you had written to be human-readable and maintainable in Angular and makes it web-browser-readable/efficient.


iu_10437_1405066.png


5. Event and Property Binding

I mentioned the power of "components" in item #1, but let's delve into them a little deeper. Imagine a situation where you have something like this with a nifty color picker "component" you built:


<color picker></color picker>

--


Now, you want to make this component as flexible as possible, so you want to allow it to "receive" a list of available colors. Well, in Angular that's called "Property Binding" and you do it like this:


<color picker [colors]="Array('#FF0000','#00FF00','#0000FF')">
</color picker>

--


It's a bit like passing a set of "parameters" into a function. Notice the bracket or "boat" syntax for input properties.


However, let's say we want to capture the color the user selects from the color picker component... just use "Event Binding!" (Notice the "banana" parenthesis syntax for events).


<color picker
  (onColorSelection)="changeColor($event)"
  [colors]="Array('#FF0000','#00FF00','#0000FF')">
</color picker>

--


This essentially "listens" for an event called "onColorSelection" within the component and "emits" it to the parent component to run a parent function called "changeColor" and passes a "chosen color" value in the $event parameter.


As you can imagine, this architecture allows you to wield a lot of power when designing components in ways that let them be re-used in TONS of different circumstances.


Another cool thing to note is that Angular also employs "two-way binding" which both INPUTS and EMITS changes at the same time! (notice the "banana boat" syntax). The double curly brace syntax is notation for LIVE variables in the html... so:


<input [(ngModel)]="username">
<p>Hello {{username}}!</p>

--


Will show an input box (yes, Angular makes it so you can add property and event binding to ANY html tag) that, when changed, both reads from the input element's changed state AND sets a variable called "username" in the parent component which instantly updates the webpage's text to write "Hello [whatever has been typed into the box]"


6. Live Changes (Change Detection)

Which brings us to the coolest thing about Angular - behind the scenes Angular is running what's called "Change Detection" which super-efficiently monitors your application for "changes" to any variable or component state. When these changes occur (either from live input or from asynchronous calls) the webpage is IMMEDIATELY updated to reflect the changes WITHOUT A REFRESH.


In the past (and probably, technically, still) this was known as AJAX or "Asynchronous Javascript and XML" and used to be a HUGE PAIN to pull off. But with Angular, all that immediate checking for changes is BUILT IN making your life as a developer WAAAAYYYYY easier!


I know, you're saying "But I can do all of that with jQuery" - well, yeah, but until you see how flippin' easy and intuitive it is to do with Angular, you ain't seen nothin' jack.


iu_10439_1405066.gif




It has been a TRIP to learn Angular over the last 7 months, and there's still a LOT more for me to learn, but I have to say that I'm super impressed with it and would recommend it highly to anyone with a website that needs to present itself as "up to date" with modern web standards ( *ahem* Newgrounds! @TomFulp ;-P ).


In fact, I've even fantasized how easy @PsychoGoldfish's pet "Newgrounds Chat" project would have been with Angular as the platform.


For further reading check these links:

https://angular.io/

https://en.wikipedia.org/wiki/Angular_(web_framework)


I hope this sparks some ideas and interest for YOU, dear reader, and, as-always, I am your, Old pal.


Please leave me a comment if you made it this far (yes, really)! My next technical post will be about the other main piece of my current job which is called Fabric.js! ... (but I might do some non-technical posts before then).


Tags:

3

Posted by BoMToons - February 12th, 2019


With my commute I've been listening to a lot of podcasts and audiobooks. I've also been chipping away at a few physical and e-reader books, though spare time is rare (again due to the commute).


I've never read so much in my life, so I'm kinda proud of myself and therefore you GET to read my book reviews allowing me to show off... you're welcome!




Red Mars, Green Mars, Blue Mars - Kim Stanley Robinson


iu_7305_1405066.jpg


These are actually 3 pretty big sci-fi books in a series about terraforming Mars. They were really entertaining and meticulously-researched. Basically the author demonstrates, through the plot, just about every semi-viable method for making Mars habitable to human life. From heat generating mini-windmills, to sheering off asteroids into the Martian atmosphere for their water content (while the Martian inhabitants gather for a giant party to watch the results), to genetically-modified-cold-resistant-CO2-producing-auto-self-destructing micro-organisms, to mining gases from other planets' atmospheres and shipping them to Mars, to putting giant mirrors in orbit that magnify and focus solar energy into a man-made (with hooks to turn it on and off) mini-sun (plus a TON of other methods). They're not limited to just portraying terraforming tech though, they also depict a bunch of viable space-faring tech like a space elevator (a cable anchored to the planet on one end and in orbit on the other end along-which supplies and people can be transported slowly - thus no need to waste fuel on breaking the planet's gravitational pull all at once).


Most uniquely, however, these books are more about the PSYCHOLOGY of terraforming than about the tech. I was fascinated by the plot device of the Martian settlers developing a treatment to counteract space's harsh radiation and repair radiation-induced DNA mutation, which ends up having the side-effect of extending the settler's lives nearly indefinitely. For the plot however, this means that we get to follow the original colony of people through HUNDREDS of years of terraforming efforts and get to see how the group's various psychological profiles interact with each other and are affected by the environment and long-life (spoiler: the books postulate that human brains eventually start to lose the ability to store old memories after a certain number of years).


To demonstrate some of the fascinating psychology consider this concept from the books: "Aeroforming"

This made-up word contrasts "terraforming" where the colonizers force their standards upon a planet. With Aeroforming, the planet has subtle psychological effects on the colonizers and "imprints" its own unique ways of seeing and being upon the people that live there. For example, the Martian horizon feels much closer than Earth's which subtly affects the colonizer's sense of space and time. Also, the sun's light has to travel much further to reach Mars and the martian terrain is wildly different from Earth so that certain kinds of aesthetics that work on Earth don't work on Mars. So architectural design and even color-theory itself has to be rethought because the preconceptions from Earth brought by the colonists are unappealing in the new environment. The cumulative effects of aeroforming end up creating various social strata with differing loyalty to Mars vs. Earth. Spoiler alert: In one of the most iconic scenes, "Reds" (people fiercely loyal to Mars with a separationist mentality toward Earth) commit an act of terrorism on the space elevator cutting off the orbiting space station at the end of the cable. This results in the cable collapsing onto the planet and wrapping around the entire planet (twice!) in a fiery destructive long linear "comet-like" streak across the sky.


I'd never thought about these kinds of subtle implications related to living on another planet, so I really enjoyed the socio-political concentration of the books.


4 out of 5 stars, for the sci-fi nerds.




The Martian Time Slip - Philip K. Dick


iu_7311_1405066.jpg


I started reading this partially due to the series mentioned above in which there is a 1 hour "time slip" on Mars every day after midnight where all Martian clocks turn off because of the difference in rotational time between Earth and Mars. What I didn't realize until just recently is that this was a cheeky nod from Kim Stanley Robinson to another classic sci-fi author named "Philip K. Dick" whose novels are responsible for a bunch of popular films like Total Recall, Minority Report, Blade Runner, and The Man in the High Castle.


One of Dick's lesser known novels (he was pretty prolific) is this book called The Martian Time Slip. It's set on Mars, but really has very little sci-fi or reason for being on Mars. It is very much about psychology, especially schizophrenia and autism. Basically, the premise is that schizophrenics and autistics are different from everyone else because they're out of phase with time. A rich guy hires an inventor to capitalize/test this theory and pull predictions of the future from a severely autistic boy.


Needless to say, this book is a crazy psychadelic trip into what the author imagines it's like to live inside a schizophrenic mind... including the idea that he sees everyone in their "future state" as walking rotting corpses.


It was very different from what I would normally choose to read, but that's a good thing I'm discovering.


3 out of 5 stars, for the autistic schizos.




Anti-Fragile - Nassim Taleb


iu_7306_1405066.jpg


I've been reading this book forever it seems like and I've talked about it in other posts (so I won't go into detail here), but I finally finished. It is non-fiction kind of along the lines of a Malcolm Gladwell book (though Gladwell stole a lot of ideas for his books from this author, Nassim Taleb and also from Danny Kahneman of "Thinking Fast and Slow" fame)


It's a life-changer to be honest and you just have to read it to understand why. It will change the way you look at just about every aspect of your own life and the outside world.


Fragile = gets destroyed by randomness/agitation/stress

Robust = handles randomness/agitation/stress without being phased too much

Anti-fragile = thrives, grows, improves from randomness/agitation/stress


5 out of 5 stars, for the philosophers, economists, and self-helpers.




Why We Dream - Alice Robb


iu_7307_1405066.jpg


Recommended by @TomFulp relating to his research for Nightmare Cops. I was a bit disappointed with this book which was basically a summary of a bunch of relatively-well-known ideas about dream interpretation and usefulness of dreams. The author seemed to have pulled a bunch of content from other sources and just conglomerated it into one volume. Nothing earth-shattering or new for me.


However, it did get me onto the idea of lucid-dreaming (taking active control of your dreams) which I've had some level of success with recently. "You can meet anyone in your dreams."


2 out of 5 stars, for dream skimmers.




Third Reich of Dreams - Charlotte Beradt


iu_7308_1405066.jpg


This was also an @TomFulp recommendation and this one was great! In it the author, who was a psychologist during the uprising of the Nazi regime in Germany, records the dreams of a bunch of her patients from that critical time period and demonstrates how there was a kind of "collective unconscious" of anxiety that predicted in many ways the brutality of the coming Nazi regime. Interestingly, the author was forced to smuggle out her psych records in various letters sent to other countries and in between pages of books in her library.


It's short and hard to find (confession: I actually paid ~$200 to get a nice-condition used copy from a book collector online! 8-O ), but it made me think a lot about our ability to perceive trends subconsciously and how our anxieties are expressed via our dreams.


4 out of 5 stars, for members of the collective subconscious.




Godel Escher Bach - Douglas Hofstadter


iu_7309_1405066.jpg


This book is one of the most unique I've ever read. I enjoyed it so much because it constantly plays "meta" games between the content of the book and the form of the prose involved in conveying that content.


It spans a vast array of topics, but is mostly about consciousness and the potential to create consciousness "artificially."


Chapters alternate between "dialogues" among recurring characters that exemplify the content to be discussed in the following chapter, then the "deep dive" into the content itself in the actual chapter. This is ONE of the ways the book's ideas are "braided" together.


One aspect that really resonated with me was the topic of intersection between disciplines. The musical stylings of Bach are discussed often and at length and taught me a lot about the beauty, intricacy, and playfulness of musical composition, but when those stylings are superimposed on certain mathematical (Godel) and artistic (M.C. Escher) concepts and parallels drawn between the three disciplines, I couldn't help but be amazed at the beauty of the reality we live in. Now, how those intersections might tie into the nature of perception, consciousness, and reality, really blew my mind. These three intermingling personalities (Godel, Escher, and Bach) are another way the book's ideas are "braided" together.


The chapter that has stuck with me and caused me to reflect a lot is one of the dialogues in which an ant hill is portrayed as a living being (Aunt Hillary) with consciousness arising from the pseudo-random activities of the autonomous ants within the hill. This is, of course, a metaphor for how our own "minds" might function to create consciousness with independent complexity meshing into some cohesive form when viewed from the right holistic perspective (and not, as you might expect, when viewed at a zoomed-in and detailed perspective). Most people that meet Aunt Hillary can't understand her, but an adept ant-eater has "learned to speak her language" and therefore can hold lively back and forth conversations with her.


It's a BIG book and some of the math/logic was rough for me to slog through, but it really changed the way I think about the world around me, so I can't recommend it highly enough.


Even better though, especially for me, is Hofstadter's other book "Le Ton Beau De Marot" which I'm in the middle of reading right now. I can't wait to tell you about it when I'm done.


5 out of 5 stars, for conscious ant hills.




Hark - Sam Lipsyte


iu_7310_1405066.jpg


This was a suggestion by Audible and it was an entertaining ride about a fake "guru" that attracts loyal followers despite his not really seeing himself as offering anything important. It's kind of Amadeus-esque in that it focuses mostly on one of the guru's followers who REALLY wants him to be something special so he can mooch off his talents and who goes through a strange spiritual-awakening as a result of tragedy in his life.


It's tongue-in-cheek satire, but was a fun read.


2 out of 5 stars, for the spiritually hungry, but lazy.




Man's Search for Meaning - Viktor Frankl


iu_7312_1405066.jpg


This is another life-changing book, at least for me. It's by a survivor of a few Nazi concentration camps turned psychologist. He took what he learned in surviving the hell of the camps and turned it into a philosophy/psychological method he calls "logotherapy." I listened to the book a few times and have given a lot of thought to its contents.


In a nutshell the premise for logotherapy is that, in the words of Nietsche: "If a man has a why, he can survive almost any how." He presents some compelling thoughts on how one might discover his or her "why."


The section of the book that really struck me, and helped me make some extremely hard decisions was the explanation that people will often look at the past and wish they could change one small thing that greatly affected their lives. However, we can look at our present as the "past of our future self" and realize that decisions we make now have, potentially, great impact on our future. He suggests imagining yourself on your deathbed and asking yourself what you want to have accomplished, or who you want to be with you at that moment, or how you want to be remembered, thus encouraging your current self to make choices that will lead to you becoming that "ideal" person you envision.


It's very short and very worthwhile in my opinion, so I'd recommend this one highly also.


5 out of 5 stars, for the existentialists.




Less - Andrew Sean Greer


iu_7313_1405066.jpg


This is a Pulitzer prize-winning novel recommended by a co-worker that I picked up with no prior research. I was pleasantly surprised by how good it was. The figurative language-use is outstanding and the author is adept at choosing unexpected metaphors that bring a lot of depth to the seemingly mundane.


The protagonist is a gay writer having trouble overcoming the loss of a lover who decides to travel the world rather than attend his former-lover's wedding.


The main character reminded me a lot of the stumbling and bumbling yet endearing "Bridgette Jones" (from the Rom-com Bridgette Jones' Diary) and the fantastical arc of the story with visiting exotic places and winning despite a lack of talent or ability made me compare him to a "gay Forrest Gump."


The ending was a bit rushed and predictable and really cemented the "Rom-com-iness" of it all, but I really enjoyed the writing along the way.


3.5 out of 5, for the gay bumblers.




My current reading (to be reported on at some future point) includes:

  • Design Patterns: Elements of Reusable Object-oriented Software (I'll prob include a report on this when I make a post about the Angular javascript framework
  • Le Ton Beau de Marot (my new FAVORITE book - lots to say on this)
  • Snow Country (recommendation that I've been meaning to read for a while - Obsessive page-turning)


I've listened to some really good podcasts lately too, you can find them in my Twitter feed: https://twitter.com/PestoForce


https://twitter.com/PestoForce/status/1092642199135612930

https://twitter.com/PestoForce/status/1089018130825789441

https://twitter.com/PestoForce/status/1089017596731568128


Oh, and I just moved to a new house... it's only 10 mins closer to work, but it's nice to be stabilized a bit and every minute off my commute is a big deal.


I had a crazy prophetic dream about black widows that's also on my Twitter.


https://twitter.com/PestoForce/status/1091238216592646144


Oh and a dream where my teeth came out in a strange skeletal framework with ribs and a tail down my throat. It was such a freaky image I decided to draw it!


iu_7314_1405066.jpg


Oh and I'm studying Greek so I can read the New Testament in its original language!

https://twitter.com/PestoForce/status/1084278382043361280


I won a Corn Hole tournament at my work's big all-employee gathering:

https://twitter.com/PestoForce/status/1088647277411852288


Aaaaaand Super Chibi Knight is in a bundle with 9 other games and is SUPER cheap, so think about grabbing it if you haven't yet!


https://twitter.com/IndieGala/status/1094910602429034496


Leave me a comment! I'll love you forever!


5

Posted by BoMToons - December 3rd, 2018


{{ Welcome Tumblr refugees! }}

I'm still alive, though a bit bruised and broken. Trying to claw my way back to a good place. Wishing I could make everyone happy. Still hoping for the best. Definitely not angry, though I've caused plenty of that it appears.

I took a loooong break from social media, and still haven't really gone back. It was taking a toll on me and it's felt restorative to get some "negative space" (a song where I'm not the singer: https://www.youtube.com/watch?v=gMMIT-d6WI8) going on that front. Someone told me I never follow through on my talk about quitting social media, so I stepped up to the challenge. ;-)

My new job and commute are putting a HUGE damper on my gamedev exploits, but me and @luis did eek out some time over Thanksgiving to pick back up our current project. It's a ton of fun so far, and we spec'd out some cool additions that I think people are gonna love... that is if I can find more time to work on it... hopefully over Christmas.

I decided to go totally METHOD on this game ;-P :

I'm reading (and listening to) a bunch of REALLY good books right now, I'll probably make a looong post about them when I'm done:

- Red Mars, Green Mars, Blue Mars by Kim Stanley Robinson (https://en.wikipedia.org/wiki/Mars_trilogy)

- Godel, Escher, Bach - By Douglas Hofstadter (https://www.amazon.com/G%C3%B6del-Escher-Bach-Eternal-Golden/dp/0465026567)

- Le Ton Beau De Marot - Also By Hofstadter (https://en.wikipedia.org/wiki/Le_Ton_beau_de_Marot)

- Saints (https://history.lds.org/saints?lang=eng) [ just finished this actually ]

- Design Patterns: Elements of Reusable Object-Oriented Software (https://www.amazon.com/Design-Patterns-Elements-Reusable-Object-Oriented/dp/0201633612)

- And still chewing on Anti-Fragile (https://www.amazon.com/Antifragile-Things-That-Disorder-Incerto/dp/0812979680)

I wish I could curl up and read for the rest of my life. I also dipped my toe in writing a novel during November... didn't get a lot done, but I'm proud of what I did churn out... still lots of gaps to fill in, but it was a soul-stretching exercise. Maybe when it's done I'll share it here.

I'd also like to make a post sometime about what I'm learning at my job about the javascript framework Angular. It is actually REALLY cool and I think captures some of the magic of old-fashioned "no load" Flash sites while still being 100% HTML5 and mobile compliant. (https://angular.io/docs

I discovered a bunch of symmetry tools on my i-Pad and have been toying around with art in that vein. The symmetry stuff tends to make things that feel very t-shirty. I'm too lazy lately to use reference, so it's all kinda stream-of-consciousness stuff.

My mouth is watering over the new i-Pad with the magenetic snapping Apple Pencil and auto-recharging... I'm experimenting with a newish art-style and I really loved the Venom movie (movie was cheesy-horrible fun, but the character is SO intriguing!)

I've been drawing a lot of amorphous forms (Organic pencilwork) lately and I hope my brain isn't subliminally sending me the message that I have cancer...

1405066_154389692663_Untitled_Artwork2.png

1405066_154389696663_Untitled_Artwork3.png

1405066_154389704921_Untitled_Artwork4.png

1405066_154389710193_Untitled_Artwork5.png

1405066_154389717473_Untitled_Artwork6.png

1405066_154389720641_Untitled_Artwork7.png

1405066_154389726643_Untitled_Artwork10.png

1405066_154389741672_Untitled_Artwork8.png

1405066_154389748062_Untitled_Artwork9.png

1405066_154389752893_Untitled_Artwork11.png

1405066_154389757043_Untitled_Artwork12.png

I should really post these (and my Inktober stuff) on the Newgrounds art portal... especially now that the "Tumblr Exodus" has begun and there will be a lot more artists on here...

Finally, @matt-likes-swords finished his next Epic Battle Fantasy installment for Steam and my character Super Chibi Knight makes the CUTEST cameo. Best of luck to him on the launch of his latest project!

Leave me a comment! Something about my books or art or games look interesting to you? Comment!

I'd love to hear from you.

--Nick


8

Posted by BoMToons - August 8th, 2018


In order:

1. I sat down and plugged my body/head into a machine. I understood that it was performing an old computer cleanup trick called "defragmenting" - as the process was carried out, I felt incredibly good, whole, complete.

3. My wife and I sat down together and plugged into a machine. The machine's monitor screen showed a .wav form in green, then the machine began operating and a new row with a red .wav form was inserted above the green .wav form and below the .wav form. My impression was that the machine was implementing into our souls/lives/experience/nature lower lows and higher highs (the existence of one enabling the other - higher highs allowing lower lows and lower lows allowing higher highs).

4. I sat down at a table to finally ask all the questions I had pressing on my mind. I couldn't hear the specific answers, but I saw myself asking the questions and receiving the answers and saw myself being incredibly satisfied with the answers. I still wonder on some level, but the questions are not pressing on me and I feel ok living without them, as if a part of me understands and accepts the answers, whatever they are.

5. My 3 yo son was walking up the stairs in my new rental home. There was a rattlesnake on the step below him. I yelled for him to look out, but he wasn't fast enough so I moved to distract the snake by offering my arm. The snake went for me and my dream paused with the snake's mouth wide, fangs wet, about to bite my arm. I had the impression of taking on a challenge so my son could avoid it.

 


1

Posted by BoMToons - August 8th, 2018


A lot has changed in the last 4 months since I last posted... basically every aspect of my life has been touched.

1405066_153378368563_DimV_aCXUAEQMLl.jpg

It's been, hands-down, the most distressing time in my life, I can't even really delve into the full extent of it all here. The take away, though, before I go on, is best-summarized by a book I've been reading called "Antifragile: Things that gain from disorder" - basically, my life has improved in many significant ways because of being pushed through some tough challenges. I'm amazed by the way things turned out and feel deeply grateful for the experiences. There are still quite a few challenges to overcome, but I'm in a good place mentally and spiritually - a place to rebuild on a more secure, self-aware, foundation.

To be honest, circumstances combined to push me out of my "comfort zone" (by a long shot) and that instability REQUIRED me to re-evaluate my life and goals and potential in major ways which, in the end, allowed me to reach a level in many areas that is much better than I was planning for myself. Many people (friends and family) had seen my potential and encouraged me to "go after it," make sacrifices, push myself, etc., but I was, honestly, playing it safe. With the safe option removed, my best came out. Frankly, that lesson, alone, is revolutionary to me. I have immense gratitude for what happened, even though it felt "forced" at first, I now see it as a huge blessing and am trying to embrace the opportunities provided by it. Despite the improvements not originating with my own agency, I am NOW using my agency to build off the foundation provided externally.

One of the big stressors was my newborn son being in the PICU for a week:

1405066_153378359423_DfH5LNmX4AcxB8E.jpg

1405066_153378361791_DfH5LNLXcAAhYXh.jpg

I also got in a scary accident on the freeway and the insurance company ended up "totalling" my car... which seems pretty trivial looking back on things now.

The biggest change is in my career! I am now a software engineer at a company called TreeRing. It's a funny story because, when I was teaching, I was my school's yearbook editor. We used TreeRing to design, print, and ship our yearbooks. At the time, their product was all built in ADOBE FLASH, which I totally understood and chuckled at when I first saw it because of my background making Flash games. However, I was a bit surprised that they were using a "dead" technology.

Later I started getting emails about their upcoming new product version which would be completely based on modern web technologies like HTML5. Again, I could totally relate because I have been involved in a few companies that have had to swallow the tough pill of switching away from Flash. I ended up printing 2 yearbooks (over the course of 2 years) for my school with TreeRing and their customer service and final product was impressive to me. Plus I admired their business model and history with Flash.

So, I happened to get a notification on LinkedIn about TreeRing having an open Software Engineer position and I felt compelled to apply. Their specifications were obviously for someone who could jump into their new HTML5 product which, at the time, was not totally in my skillset. However, my brother-in-law recently went to a code bootcamp for all the necessary skills and had been working at a company for a couple years with a similar product... so I asked him to give me a crash course!

Over the next couple weeks, I worked around the clock on updating my web-dev skills. Javascript frameworks was my main focus, stuff like jQuery, Angular 2+, React, SASS css, GreenSock, etc. Check out my website bling updates:

http://www.pestoforce.com

I learned A TON [ good thing because I had included all of those skills on my resume... >< ]. Eventually, I got a call from the TreeRing CEO and did a phone interview. We commiserated about Flash and Steve Jobs' big mouth and he said I was the 1st engineering applicant that had also been a customer. He moved me on to a phone interview with the CTO (chief technical officer). I was really intimidated at not being able to answer technical questions in that interview, so I tripled my preparation studies.

That interview was not as "ecstatic" feeling as the one with the CEO and I was pretty convinced I wouldn't get a call back. However, a few days later they asked me to come in to San Mateo CA (6 hours from my house in NV) to meet their dev team and see if I was a good fit. I drove in and met with their team for... 4 hours!!! Longest job interview ever!

Personality-wise, I did pretty well, but their main code wrangler had some tough questions that I had to punt on. The funniest, and most unexpected part, was that when I met with the CTO in-person he asked me a question about how I would approach problems without a clear solution and that required dismissing past assumptions... basically, how would I overcome my in-built biases when approaching code problems... we ended up talking about The Black Swan, Antifragile [books I'd been reading], and a few podcasts I'd been listening to also. I would never have guessed that all my "for fun" reading and listening would help prepare me for job interviews!

Because of the "punted" questions, I was not very hopeful at getting another callback, but I didn't give up! Their main code wrangler had mentioned a product called Fabric.js so I decided to create a demo of their yearbook application using Fabric (after I learned it of course). I ended up sending this to their main code wrangler, the CEO, and the CTO:

http://pestoforce.com/fabric/

They offered me the job the next day :-)

1405066_153378341131_Di6mMT7VsAEpMru.jpg

Pros: Literally more than 3x my teacher salary + benefits, California weather, job that I love in my wheelhouse

Cons: They wanted me to start ASAP

So, we did a mad dash to pack up our home, list it for sale, secure a rental in CA, and move [ amidst tons of other stressors - what seemed like layer upon layer of challenges ]. I struggled with feeling helpless/powerless/a "victim", but knew that would be a downward mental spiral and decided to roll with the punches and come out on top. I also eventually concluded that my troubles were, mostly, of my own making - facing that fact was the healthiest course to overcoming.

We ended up making the work start deadline! Though we had to choose a place about 1 hour outside the Bay Area because of the costs of homes in the area. That means what should be a 1 hour commute, but Bay Area traffic makes that potentially MUCH longer...

1405066_153378375191_DiROQz6U0AAW9jF.jpg

1405066_153378377592_DilFeEpVMAEIg4q.jpg

Followup amazement: On my 2nd day at work, they took me out for Burmese food as part of their "New Kid Lunch" tradition. We talked about how I was adjusting, my commute, etc. When we got back to the office, the CEO called me in to a private room and gave me a SIGNIFICANT raise! He explained that he's afraid of me burning out with the commute and that hopefully this will help us move closer... which it will! Once our previous home sells, we'll be able to move right next to the Bay opposite San Mateo, making my commute ~30 mins in heavy traffic. (!) Still pinching myself about that one.

To end off I'll link you to another post about some significant dreams I've had over the last few months.

I love Newgrounds for a lot of reasons (and I still hope to get back to making games some day, but software dev is a close rival), but the reason I love NG today is because it's given me a place to blog over the last decade of my life and I'm really grateful to have everything recorded in a more intimate format than Facebook/Twitter. Optimistically proceeding.

Leave me a comment yo!

--Nick

 


10

Posted by BoMToons - April 6th, 2018


I've been super busy, so I apologize for a lack of posting here... lots to report on, but I'm gonna make you read the boring stuff before I get to the real reason you're here:

I'm still teaching Game Development, Graphic Design, and AP Art at a local high school full time (though I'm just finishing up Spring Break). Check out this game one of my students made, it's a pretty fresh take on the word search genre!

https://www.newgrounds.com/portal/view/703243

My Advanced Game Dev class has been working on MULTIPLAYER games! I had to teach them a bit of PHP and HTML/CSS (which was rough for them, but I think it's good to ask them to do "hard" things). I plan to take some videos of us playing their games during the upcoming week, I'll post that here!

To make the students' experience a LITTLE easier, I coded a PHP<--->Web Database<--->Flash multiplayer API called P.R.A.M.S. (Pasto's Radical Asynchronous Multiplayer System). To test it out I added multiplayer functionality to my old Jeopardy! game. To make a long story short, the previous J! game, when you got to Final J! required me to use a bunch of slips of paper and pencils to submit wagers and responses (because wagers and responses are private from the other players unlike the rest of the game). With the new system, the players can use their phones/tablets to log into my website (using an access code generated by the main Flash game) and then submit their wagers and responses. Additionally, I'm now keeping a record of all the games' data and using that to keep a running online high score board! Woo!

1405066_152303699991_jep2.jpg

1405066_152303703551_jep1.jpg

Both of my house's toilets started leaking at the same time, so I ended up learning how to rebuild toilets via YouTube... it was frustrating, but ultimately rewarding!

1405066_152303713942_toilet.jpg

We celebrated Pi Day on March 14th (though that's not the REAL Pi Day) in my Game Dev classes while we studied Trigonometry for 2D games!

1405066_152303727561_PiDay.jpg

Did I mention I have the Abobo Cabinet set up in my classroom? This is what my lunch time looks like:

1405066_152303743682_arcade.jpg

My students also found a thrift store painting and set up a SHRINE in my classroom:

1405066_152303750521_shrine.jpg

I got one of those SWEET Newgrounds Pins!

1405066_152303756462_pin.jpg

I'm also the "PR Coordinator" for my school, and got this GIANT banner made to hang on the outside of the school... it's ridiculously LARGE:

1405066_152303771083_sign.jpg

My AP Art students have been making some RAD stuff:

1405066_152303775993_art.jpg

I've also been making art with the Apple Pencil on my iPad Pro, trying to keep up with my students (this is how I unwind at night):

1405066_152304195033_combo.jpg

I'm trying to improve my ability to draw/paint human faces, especially to capture "likenesses" which I feel I'm weak with... so I've been doing a series of portraits from Star Trek The Next Generation... :-P

These are posted in the order I painted them.

The Data one came out so bad, I had to re-do it to feel better about myself (first and second attempts shown).

Everyone says my Wesley Crusher turned out looking like that gun protest kid... David Hogg...

1405066_152304144583_daset.jpg

Only Picard left to do! I feel like I'm getting settled into a good technique and process for these, overall it's been a frustrating and helpful exercise!


Here's the good stuff!

I teamed back up with @Luis to re-make Castle Crashing the Beard for its 10-year anniversary! 

1405066_152303909623_luisandnick.jpg

We missed the actual anniversary date deadline, but it's a "spare time" thing and we're making it in GameMaker so it's taking A LOT longer than an equivalent game made in Flash. We don't know what we'll do with it when it's done but, as with the original, it's a tribute to games and people we love, so hopefully we'll figure out how to publish it, at least, on the web for everyone to play.

Here are some animated GIFs to get you HYPED! (Everything is WIP and likely to change a lot):

1405066_152303957592_levelup.gif1405066_152303977982_challenger.gif1405066_152303993052_bread.gif

1405066_152304016993_spinny.gif1405066_152304024252_booted.gif1405066_152304036653_coins.gif1405066_152304040863_deerest.gif

If you want to stay up to date on day-to-day progress, follow me on Twitter and Instagram (which I update pretty regularly):

Twitter: https://twitter.com/pestoforce

Instagram: https://www.instagram.com/pestoforce/

Thanks for reading! Leave me a comment!

 


1

Posted by BoMToons - January 23rd, 2018


I wanted to make a post on Pixel Day because I have some pixel-ish news! @Luis and I are working on a game again! Did you know it's been nearly 10 YEARS since one of our most popular games was released? 

I know, I feel old too...

We're updating stuff on that special game in a way we hope you'll enjoy!

In other news, Deterministic Dungeon Mobile is now out in the Google Play Store for Android devices!

https://play.google.com/store/apps/details?id=air.com.pestoforce.dd

If you need it on iOS, here's that link!

https://itunes.apple.com/us/app/deterministic-dungeon/id1244288167?mt=8&ign-itsct=1244288167-1244288167&ign-itscg=0177&ign-mpt=uo%3D4


1

Posted by BoMToons - December 13th, 2017


Hey err'body! You may remember this lil' web game, Deterministic Dungeon, I made a while ago:

https://www.newgrounds.com/portal/view/674476

It's one of my better ideas for a game, but I think it really fits best as a MOBILE game. So Antony and I (@the-exp) have been chipping away at it for about a year, and it's finally launched on iOS (Apple iTunes Store)!

Here's the short launch trailer:

You can grab the game FOR FREE for iOS devices here:

https://itunes.apple.com/us/app/deterministic-dungeon/id1244288167?mt=8&ign-itsct=1244288167-1244288167&ign-itscg=0177&ign-mpt=uo%3D4

Android and the Google Play Store are coming soon!

Let me know if this gets you excited! I know it does it for me!


Posted by BoMToons - November 28th, 2017


This is a quick update to let you know I'm still around and teaching Game Development to high schoolers!

One of my students submitted a couple of her games, check 'em out and leave a review, she's really appreciating all the detailed feedback she's been getting! (good job Newgrounds!)

https://www.newgrounds.com/portal/view/702632
https://www.newgrounds.com/portal/view/702633

Every day I think: "Man, I wish I had this class when I was in highschool!"

1405066_151190808453_boss.jpg

The template:

1405066_151190813333_boss1.jpg

There's also some talk with @luis about reuniting to revisit an old project for its 10-year anniversary... but I'm keeping it hush hush for now...

Also, we got a new car!

1405066_151190829113_n.jpg

I did Inktober back in October, and it was a learning experience! Doing non-digital stuff was a nice change of pace. Here are some highlights!

1405066_151190856563_n.jpg

1405066_151190858283_n.jpg

1405066_151190860052_n.jpg

1405066_151190862163_n.jpg1405066_151190864521_n.jpg1405066_151190866442_n.jpg1405066_151190867862_n.jpg1405066_151190870183_n.jpg1405066_151190872752_n.jpg1405066_151190874363_n.jpg1405066_151190876282_n.jpg1405066_151190879283_n.jpg1405066_151190881763_n.jpg1405066_151190883941_familykitchen.jpg

I should really upload these to the art portal I now realize...

What have you been up to for the last few months?

Hugs and kisses,

--Nick


Posted by BoMToons - June 9th, 2017


I can't believe it's been 3 months since my last post. Life has been a whirlwind!

I finished my 1st year of teaching. It was a total stress the first semester because I was "student teaching" and under constant observation, then I got my feet under me for the second semester.

I don't know if it's a 1st-year teacher thing, but I really grew to care for my students... I've been a bit melancholy the last week without seeing them.

I'm going to miss them over the summer and the seniors FOREVER! It's bittersweet to see them moving on to bigger and better things while leaving our school behind. Hopefully I made some small difference in their lives.

Here's a pic of my empty desk, it was NEVER this clean the whole year...

1405066_149705158033_desk.jpg

Here's how we ran our "departmental meetings:"

1405066_149705161993_abobo.jpg

Here's a picture of me at the "teacher appreciation lunch" this last Wednesday at the El Dorado casino buffet:

1405066_149705005451_IMG_0031.jpg

Too much happened during the year to really do it all justice here, but I re-did the school website (design and code - including an admin panel), graduated college with my teaching degree (I had to do my own homework while creating homework for my students), made a bunch of PR videos and managed the school's PR in-general, I made over 40 videos for my teaching YouTube channel, taught around 80 students every day (subjects: computer literacy, graphic design, digital game development, oh yeah... and AP ART!), organized a bunch of school events, organized field trips, and even designed a yearbook at the last minute (last 2 weeks of school...). All of that with lots of help from lots of people.

The stats don't really paint the picture though (see poem below), there were daily laughs, trials, sorrows, and joys along the way. Compared with my normal "work from home" gig, it was, honestly, emotionally draining. I wouldn't trade the experience for anything though.

Will I continue teaching next year? Tentative answer is "yes" but I've got some stuff simmering this summer with my own game development interests that may turn into something long-term.

1405066_149705113563_rankprev.png

Tonight I hope the Golden State Warriors finish off the Cavs, but until then, here are a couple poems I wrote and a video of my classroom's unofficial mascot:

Stats:

1405066_149705101311_stats.jpg

while true

1405066_149705107992_codepoem.jpg

Chancho:

Spirits of

Departing students

Tap on glass

One more class?

They ask

Or spread these wings

& fly

To the next branch?

 There it is. How have your last 3 months been?