Categories
Note to Self Programming

Become Aware of Programming, it’s Aware of You

Simon says

It’s not a coincidence that I write about learning computer programming, and think about programming in a traditional sense. Maybe what I’m learning will help me better demonstrate the similarity between programming mobile applications to increase productivity and programming childhoods to be self-conscious consuming adults. 

On all sides of the social economic and political spectrums you’ll find acute evidence of bias, ignorance or lack of empathy, yes even you and me. I’m assuming my reader is aware of this already so that I don’t sound outrageous. If you’re thinking to yourself, “I’m not ignorant”, well you’re being ignorant because even the oldest gurus know that they don’t know. 

“I am the wisest man alive, for I know one thing, and that is that I know nothing.”

Socrates

Let It Go

I couldn’t wait to grow up, big mistake.

When we’re 3 years old we are free to be as we are. A child who in one minute will experience bliss in a puddle of water will then scream and cry the next minute for getting too wet. We played outside in the grass with nothing more than our imaginations and threw around our toys for no good reason. The point I’m getting at is that when we’re in our parents care, before public schooling, we’re encouraged to express ourselves, laugh, live, & love (if you’re lucky) like that cliche plaque that’s out there being sold for $20.

As soon as we turn 5 or 6 years old kindergarten begins, and so does the degradation of self expression and the institution of conformity. Well, that’s what it seems like now looking back, but when you’re unaware of it as a child or a parent it’s an exciting new adventure into forming social skills, friends, education and well, a test of performance. 

Is that a prison or a school? Switch some letters up and change the color of the bus

In my opinion public schooling is like rolling the dice on childhood development. Hope you roll snake eyes, anything else, you could end up with a variety of strange outcomes. I get it though, the system is set up where parents work 9 – 5, so school is like a free day care, and you didn’t turn out so bad right? As the parent, it’s your job to encourage self expression, discipline selfishness, and guide them however you see fit, which is the most important job any human can have, but that all translates into programming. Here’s a good opportunity to compare computer programming to childhood programming, but I’ll let you imagine the similarities.

It’s By Design

Pay close attention to nothing on the T.V.

There’s a reason it’s called Television Programming. We use to refer to the TV Guide as the program before the streaming boom, even before my time. It’s no mistake that today, kids are glued to screens, waiting at bus stops for a school whose art and music program is a thing of the past, and punishes them for “acting out.”

Whether we acknowledge the education system as a design for productivity or a design for conformity there remains one constant: it’s illegal to not show up. 

“Typically, children must start school by the age of six and remain enrolled until they are at least 16. These laws were put in place not only to improve literacy rates but also to discourage the widespread child labor practices of the 19th and early 20th centuries.”

FindLaw.com

How Much of Your Thoughts Are Your Own?

Fast forward to your twenties after high school, maybe you’ve taken psychedelics or haven’t been brave enough yet, but you at least tried to smoke weed. Maybe you’re well read and had studied philosophy and had begun to strip away some of the layers of institutionalism you had previously followed without question.

Once you begin to unravel the fabric of society, the hierarchy, the political system, and the corporate structures, you get into the habit of peeling back the layers or falling down the rabbit hole.”Where’s this rabbit going?”, “What’s the reason for this law?”, “What’s the reason for money?”, “What’s the point of life?” All these questions allow you to seek answers, and they’re important to the deprogramming of childhood trauma you had no choice but to interfere with. Whether you want to admit it as traumatic or just unfortunate events is up to you, but whether you realize it or not, your childhood is something you still carry around with you today, good or bad. 

“They hate you if you’re clever and they despise a fool.”

-Working Class Hero, John Lennon

Living is a State of Hypnosis

Whether you’re scared to accept truth that’s uncomfortable for you to handle or ignore evidence to remain blissfully ignorant is your choice. I love that cliche, “you can take a horse to water but you can’t make him drink it.” Sometimes cliches are the best way to make a point, and the point is, do us a favor, drink the water. You might feel feelings you’d rather avoid, but you’ll be aware of the truth. 

Bill of Right or Temporary Privileges?
They Don’t Care About Us

“I’m tired of bein’ the victim of hate. You’re rippin’ me of my pride, oh, for God’s sake. I look to heaven to fulfill this prophecy” 

They Don’t Care About Us, Michael Jackson

Sometimes a song is the best way to get a point across too. The message is clear through out all music and that’s why I’m working on a collection of artists that have been an archetype of truth called “Proof of Truth.” It’s important that we remember these truths so I’m gathering all my favorite works and quotes to share with you, but for now, go listen to that Michael Jackson song. 

I’ll end this programming article with a glimmer of hope. Even though 100% of the people around you are programmed, not all of that programming is bad, and there are ways to reprogram our minds. For instance, meditation is a great practice to reprogram our trigger mechanisms, but if you want a shortcut, take some mushrooms with an experienced friend in a safe setting. The reprogramming experiments you do on your own mind can be dangerous, so don’t go blaming this author on your newly found psychosis, take it easy, breathe and be nice to people. 

If you want to chime in please feel free, leave a comment below or reach out to me on Instagram @kyleknob

Categories
Programming

My Explanation of Classes, Methods & Conditionals in Dart

Destini app
This is my Destini

I created my very first app with my understanding of Classes, Methods, & Conditionals in Dart called Destini. I did not create this by scratch however, I completed a challenge from the course I’ve been taking with Angela Yu on Udemy. The objective is to create a choose your own adventure story. Depending on the choices the user makes as they read along with the story, the story data that appears on the screen changes along with it. 

Recalling information you learn from tutorials and utilizing them in real life is difficult to say the least, but not impossible.

I took this step by step and eventually got through it, checking in on the solutions as I went along to see if I was getting it right. I’m pretty sure that is practically how every app gets done, Googling things to get the solutions from stackoverflow.com or something, so I’m not being hard on myself for not recalling everything I’ve learned. 

First of all I’ll run through the steps so that I can better understand what I created, because even though I followed these steps I need to better clarify what it is I’m actually doing. If you’re a new reader I’ll tell you now that I’m learning how to program so that I can build out apps of my own and I’m writing out what I’m learning in blog posts so that I better understand what it is that I’m learning.

Step 1: Download the project file using version control. That’s where you copy and paste the GitHub repository into Android Studio and it copies everything onto your computer so that you can access all the files when you ‘Get Dependencies’ when you load the project from your system. 

The project file had set up the Scaffold, but I had to put in the background image. Which after looking it up was not hard.

class _StoryPageState extends State<StoryPage> {

  @override

  Widget build(BuildContext context) {

    return Scaffold(

      body: Container(

        decoration: BoxDecoration(

            image: DecorationImage(

                image: AssetImage(‘images/background.png’),fit:BoxFit.cover


You use the property decoration: and declare BoxDecoration( image: DecorationImage( and finally image: AssetImage(‘images/filename.png, fit:BoxFit.cover.

After setting that up I needed to create a story.dart file with a class that held some objects. That class is called Story:

class Story { // creation of class

  String storyTitle; // creating object variable holding a String called storyTitle

  String choice1; // creating object variable string for the users first choice called choice1

  String choice2; // creating object variable for the users second choice called choice2

  Story({this.storyTitle, this.choice1, this.choice2}){ // creating a method that holds the objects above using this.storyTitle refers to the above variables

    storyTitle = storyTitle; // the method declares storyTitle to equal the variable passed in the input of the method

    choice1 = choice1; // the method declares choice1 to equal the variable passed in the input of the method

    choice2 = choice2; // the method declares choice2 to equal the variable passed in the input of the method

  }

}

This is sort of confusing at first glance so I tried to break it down with a // comment next to each object and method to explain it as best as I could. I am going to import this story.dart file into the story_brain.dart file I’m going to create next. You will see how it communicates with this other file next. I practically created this to be like the working mechanism that will pass data into the main.dart file appropriately, you’ll see. 


Now let’s take a look at the final story_brain.dart file, since I write these blogs after I’m done the challenge it’s easier to just explain to you what I can. Read the // comments next to the emboldened text to follow along.

import ‘story.dart’; // importing story.dart or the story class to work wit the data. 

class StoryBrain// creating the BRAIN of the app, where all the data is stored. 

  int _storyNumber = 0;  // this variable will load the first story in storyData (below) in the List on the screen, and then be updated as the user chooses. 

  List<Story> _storyData = [  // creating a List with a <widget> referencing the <Story> class and calling it _storydata, this holds all my data for the app that will load on the screen

    Story(

        storyTitle: // using storyTitle from the Story class we created in story.dart 

        ‘Your car has blown a tire on a winding road in the middle of nowhere with no cell phone reception. You decide to hitchhike. A rusty pickup truck rumbles to a stop next to you. A man with a wide brimmed hat with soulless eyes opens the passenger door for you and asks: “Need a ride, boy?”.’,

        choice1: ‘I\’ll hop in. Thanks for the help!’, // using choice1 from the Story class we created in story.dart

        choice2: ‘Better ask him if he\’s a murderer first.’),  // using choice2 from the Story class we created in story.dart

    Story(

        storyTitle: ‘He nods slowly, unphased by the question.’,

        choice1: ‘At least he\’s honest. I\’ll climb in.’,

        choice2: ‘Wait, I know how to change a tire.’),

    Story(

        storyTitle:

        ‘As you begin to drive, the stranger starts talking about his relationship with his mother. He gets angrier and angrier by the minute. He asks you to open the glovebox. Inside you find a bloody knife, two severed fingers, and a cassette tape of Elton John. He reaches for the glove box.’,

        choice1: ‘I love Elton John! Hand him the cassette tape.’,

        choice2: ‘It\’s him or me! You take the knife and stab him.’),

    Story(

        storyTitle:

        ‘What? Such a cop out! Did you know traffic accidents are the second leading cause of accidental death for most adult age groups?’,

        choice1: ‘Restart’,

        choice2: ”),

    Story(

        storyTitle:

        ‘As you smash through the guardrail and careen towards the jagged rocks below you reflect on the dubious wisdom of stabbing someone while they are driving a car you are in.’,

        choice1: ‘Restart’,

        choice2: ”),

    Story(

        storyTitle:

        ‘You bond with the murderer while crooning verses of “Can you feel the love tonight”. He drops you off at the next town. Before you go he asks you if you know any good places to dump bodies. You reply: “Try the pier”.’,

        choice1: ‘Restart’,

        choice2: ”)

  ];

String getStory(){ // this function is called in main.dart to load the next storyTitle in the List above. 

  return _storyData[_storyNumber].storyTitle;

}

  String getChoice1() { // this function is called in main.dart to load the next choice1 in the List above.

    return _storyData[_storyNumber].choice1;

  }

  String getChoice2()// this function is called in main.dart to load the next choice2 in the List above.

  return _storyData[_storyNumber].choice2;

  }

  void nextStory({int choiceNumber}){ // this function determines what story loads in the _storydata List. Passing {int choiceNumber} into the function allows us to pass an integer into the function when calling it. Like so: storyBrain.nextStory(choiceNumber: 2);

This tells the function in main.dart what choice has been selected, and what to do if we pass a 1 or a 2 into that choiceNumber variable 

    if (choiceNumber == 1 && _storyNumber == 0) { 

      _storyNumber = 2; // if user chooses choice 1 and it’s _storyNumber is 0 then change _storyNumber to 2

  } else if (choiceNumber == 2 && _storyNumber == 0) {

  _storyNumber = 1; // else if user chose choice2 and the _storyNumber is equal to 0 then change _storyNumber to 1

  } else if (choiceNumber == 1 && _storyNumber == 1) {

  _storyNumber = 2; // depending on what user choice above and ran either of those conditional statements do the following and then the following else if statements that follow the story line..

  } else if (choiceNumber == 2 && _storyNumber == 1) {

  _storyNumber = 3;

  } else if (choiceNumber == 1 && _storyNumber == 2) {

  _storyNumber = 5;

  } else if (choiceNumber == 2 && _storyNumber == 2) {

  _storyNumber = 4;

  } else if (_storyNumber == 3 || _storyNumber == 4 || _storyNumber == 5) {

      restart(); // then when user reaches the end run a function called restart() we create below

    }

  }

  bool buttonShouldBeVisible() { // hiding the bottom button on the last _storyNumber in the List

    //You could also just check if (_storyNumber < 3)

    if (_storyNumber == 0 || _storyNumber == 1 || _storyNumber == 2) {

      return true; // if _story number is equal to 0 or 1 or 2 return true, or keep the button visible

    } else {

      return false; // if it’s not less then 3 then keep the button

    }

  }

  void restart(){ // set the storyNumber back to the beginning by loading the 0 index of the List

  _storyNumber = 0;

  }

}

This is what my completed story_brain.dart file looks like and the explanations of how each of these corresponds to the main.dart file that displays the widget trees of the app. 


Screenshot of Destini App

Let’s take a look at main.dart to see what’s going on in there. I can not stress enough how important this is for me to write about, I’m having a moment of clarity right now. 


Here is main.dart:

Again, follow the // comments to understand how I’m breaking this apart for you to understand

import ‘package:destini_challenge_starting/story_brain.dart’;

import ‘package:flutter/material.dart’;

import ‘story_brain.dart’; 

// importing the story class from story_brain and story.dart

void main() => runApp(Destini()); 

// main return your runApp function and input my app Destini()

class Destini extends StatelessWidget { 

  Widget build(BuildContext context) {

    return MaterialApp(

      theme: ThemeData.dark(), // this tells the app what color it should be

      home: StoryPage(), // this is going to hold the part of our app that a will change appearance in the StatefulWidget below

    );

  }

}

StoryBrain storyBrain = StoryBrain();

// this can be confusing, but we’re calling our class with the first StoryBrain and we are creating an object in our main.dart called storyBrain and its going to hold or equal the StoryBrain(); class data. This tells the main.dart to interact with all objects in that class in the file story_brain.dart

class StoryPage extends StatefulWidget {

  _StoryPageState createState() => _StoryPageState();

// this is where the app will change it’s appearance using this StatefulWidget allows changes to happen on screen

class _StoryPageState extends State<StoryPage> {

  @override

  Widget build(BuildContext context) {

    return Scaffold(

      body: Container(

        decoration: BoxDecoration(

            image: DecorationImage(

                image: AssetImage(‘images/background.png’),fit:BoxFit.cover

            )

        ), // container holding a background image in our assets folder

        padding: EdgeInsets.symmetric(vertical: 50.0, horizontal: 15.0),

        constraints: BoxConstraints.expand(),

        child: SafeArea( // keep things within the SafeArea

          child: Column(

            crossAxisAlignment: CrossAxisAlignment.stretch,

            children: <Widget>[

              Expanded(

                flex: 12,

                child: Center(

                  child: Text(

                    storyBrain.getStory(), // this loads the story into the center of the screen, notice it’s within a widget tree starting with the SafeArea, a Column, and the children in that column within an Expanded, that holds centered text. 

                    style: TextStyle( // this is changing the style of the text loaded from getStory();

                      fontSize: 25.0,

                    ),

                  ),

                ),

              ),

              Expanded( // beginning of our button

                flex: 2, // I need to understand how flex works a bit better, sorry.

                child: FlatButton( // our first button that tells us the user chose choice1

                  onPressed: () { // button action

                   setState(() {// this allows the button text to change, gotta use setState if something is changing on the button

                      storyBrain.nextStory(choiceNumber: 1);  // calling storyBrain, run the nextStory method we made, and so you know which choice it was they made, we input (choiceNumber: 1); 

                    });

                  },

                  color: Colors.red, // color of the button

                  child: Text(

                    storyBrain.getChoice1(), // calls the method in storyBrain to getChoice1 String data.

                    style: TextStyle(

                      fontSize: 20.0,

                    ),

                  ),

                ),

              ),

              SizedBox(

                height: 20.0, // this is the spacing between the two buttons

              ),

              Expanded( // button 2

                flex: 2

                child: Visibility( we use this to hide the button on the last storyTitle

                  visible: storyBrain.buttonShouldBeVisible(), // we created a function in storyBrain to check to see if the button should be visible or not

                  child: FlatButton(

                    onPressed: () {

                           setState(() {

                        storyBrain.nextStory(choiceNumber: 2); // I’m calling it to load the nextStory based on the choice made by the user with the input (choiceNumber: 2)

                      });

                    },

                    color: Colors.blue,

                    child: Text(

                      storyBrain.getChoice2(), // this get’s the String data for choice2

                      style: TextStyle(

                        fontSize: 20.0,

                      ), …


That’s what main.dart is like. I’m confident in my understanding of it after I did this diagnosis of the Dart files. It’s important for me to do these blog posts for myself rather than a motivation to do it to provide for you. Honestly I don’t think anyone is reading this far unless you’re a beginner programmer that also reads lengthy blogs on the subject, that’s a micro niche, I’m sure your out there. Hi! Thanks for reading. 

I hope you got some good insight out of this, I did. If you have any questions or comments or you think I might have got something wrong in my explanations leave a comment below or reach out to me on Instagram @kyleknob. 

Categories
Note to Self

Sustainable Living Is The Truest Form of Protest

It’s like a larger than life outdated computer running an old OS

The system is broke, you know it, I know it, we all know it, yet we continue feeding into the very thing that is keeping us down. I’m not trying to point out something that’s hard to find, it’s more obvious than ever. What is it going to take to change? A few things, but first we must get our priorities straight. 

If money is the only language they speak, then you better learn all about the language.

Priority 1: Eliminate Frivolous Expenses

Entertainment, eating out, gas, energy bills, and vacation are variables that fluctuate your checking account statement. Whatever you can cut out, cut out. The reason I’m telling you this is because we don’t really consider these expenses as draining, rather we think of them as essential. If you’re on the protest tip, which if you’re reading this blog you must be, or just a very well read hater, then you should try to pin point what is distracting you from your goals and prioritize accordingly. You need Netflix, Amazon, and Hulu subscriptions? Probably not. Can you spend less on food? Maybe. Can you run your air conditioning unit less? If you live in LA it’s probably impossible but you could. You get the point.

Priority 2: What are you investing in?

I’m saving up enough cash and dollar cost averaging into digital assets to hopefully get me ahead in the coming years. I’m investing in my self by learning how to program mobile apps, becoming part owner of an herbal supplement brand PlantsBasically, starting this blog, expanding readySketch, and starting a podcast.

I’m being very ambitious with my self because I know that investing in myself is the single most important investment I can make.

Same goes for you, what can you bring to your audience or your work place, that will allow you to become successful in your own way? Let’s face it, no one wants you to succeed at what you do, they hope you fail so that you can make room for them to succeed. Push through the criticism, the insecurity and be vulnerable

Priority 3: What is your goal?

This has become a blog post about personal strength, but maybe that’s not a coincidence that personal strength is considered a protest. Let’s face it you can not go out and change the entire world by holding a sign on the street that reads, ‘No Justice, No Peace.’ There’s a point where you are just repeating a phrase like a wind up toy and no one cares or even understands what you mean. My goal is to build up my businesses enough to allow me to live on land that I own with friends I love in a technologically sustainable way. That means, solar passive housing, homesteading, gardening, hunting, foraging the whole nine yards. I want my expenses to be cut down far more than they are now and have more income to travel and live the life I want. How do I get there? Well I got to have a plan.

You fail and fail and fail until you get it right.

Priority 4: Make a plan

My plan involves saving, investing, building brands, and educating myself. It took a pandemic for me to understand what I needed to do to get to where I wanted to go. I call this the pandemic effect, where I was faced with my mortality, so much so that I feared for my life. I didn’t want to see my girlfriend, I didn’t want to go to work, I was a victim of the fear surrounding the virus. I’ve grown past it and learned a lot since the initial headlines, but it rattled me. This survival instinct went into full effect. For the first time in my life I realized how easy it is for it all to be taken from you. Remembering you are not infinite and that you will one day leave behind just a story of you really kicks planning into overdrive. This is when I knew that I can not rely on the grocery store, the job, the gas stations, and the almighty dollar for security. This will not last forever, and I want to be ready when it collapses. 

Priority 5: Do the work

You can get all the way up to the planning stage and just give up, realizing that you just don’t have it in you to continue to do the work day after day. It’s so easy to just sit on the couch, drink a beer, tell yourself you had a hard day, and turn on the T.V. I’m sure your day was hard, but let’s face it, it wasn’t 1920’s depression hard or 1700’s witch trial hard, it’s just hard compared to what you see on television and on the internet. People live kush lives online don’t they? Influencers that never did a day of hard work making millions shaking their asses for a McDonalds endorsement or whatever. Stop comparing yourself to others, and just start a habit of doing the work necessary to get you to where you’re going. 

Priority 6: Positive reinforcements

When I’m fed up with all the stuff I have to do, and I just want to sink into my bed and watch an episode of The Simpsons, instead I put on something that will reinforce my work ethic. Maybe listen to something Gary Vee has to say about putting out content, or Seth Godin on marketing, or hell, even Ram Dass on experiencing all the love around you not as separate from the world but of it. There is an endless database of positive reinforcements that live on the internet at your fingertips that will keep you motivated in what you are doing. Digest great quality content, do not feed into the “I’m feeling sorry for myself” narrative our brains want to so quickly resort to when things get tough. 


I’m tired of seeing all of these large corporations being propped up by billions of tax payer dollars during economic recessions. You’d think we should’ve had our revolution already. You know why we hadn’t? We have not yet put a finger on what to do otherwise. We keep looking up to our political mothers and fathers for permission to eat, breathe and sleep. How will we be able to get our point through the heads of our theatrical political show runners? Good question, my advice, do your best to not have to rely on them. Seek alternatives to the dollar, seek alternatives to traditional health care, seek alternatives to energy consumption and finally seek alternatives to the mainstream narrative of polarity amongst citizens. We all forget the truth too easily, and that’s I Am The Walrus or “I am you, you are me, and we are all together.”

Get familiar with the truth
Categories
Note to Self

Financial Advice For My Teenage Self

First of all congratulations, you reached a stage where insecurity is king and your main focuses are getting laid and partying, but you’re also going to have to find a job if you want to buy a car, beer or drugs. 

I got a truck when I was 17.

You’re 13 you don’t really know what lies ahead, but you’re still kind of anxious to get older so you can get a license and eventually a job because Mom and Dad can’t afford all of that and your dinner, so wise up, the freedom of childhood is fleeting. 

In 7th grade I was 12 and was instructed to write a letter to my future self 5 years down the road and when I graduated high school I’d receive it in the mail. I wish I remembered how that worked, it was a cool project. Anyway, I do remember how exciting it was to read  it when I was 17 graduating high school. I was telling myself that I better be still skating and be sponsored or something like that and then I’d be disappointed if I had stopped. 

I wrote this to my future self, of course I kept it in my important box.

I didn’t stop skating and I was sponsored at the time by Supra, Krew and Foundation. It felt like I was achieving my dream, but it’s a shame that you can’t do the opposite, write to your past self, though impossible, it would be tremendously useful. So instead of trying to break the space time continuum laws I’ll just write to you, the young teenage kid who would give a shit about their finances enough to read a blog about it. 

Let’s call money what it really is, a freedom score. The higher the score, the more freedom you have. Once you understand this you’ll want a high score. 

Let’s break this down in 4 steps:

Step 1

Save 10% or more of your income every pay period. 

If you get paid $200 a week save $20 or more if you can, and don’t spend it. You’re at the very beginning of your journey to own assets that will make you rich, but let’s really talk about what being rich means. Being rich means having enough money coming in every month to cover all of your expenses and the freedom of never going into work again. There’s a few ways for you to get there, but the most easy to understand is buying a house, and though you’re young and buying a house seems so far out right now, every penny you save will make it that much easier to get one, and that much sooner to freedom. 

If you save $250 a month for 10 years, you’ll have $30,000

If you’ve played Monopoly then you understand the value of houses. When someone lands on the property, or wants to rent a room in your house or the entire thing, the more money goes into your pocket. The median household cost in America is about $300,000, you need anywhere between 10% – 30% to get the house, so at least $30,000 to cover all these costs that you can’t even think of, you’d believe they were just making them up. As soon as you get a house though you can start renting, the more rooms or the more houses you have, the more money you will have to cover the cost of the monthly mortgage plus funny money. I’m sure you can imagine the domino effect, easy pickings if you got the down payment.

Step 2

Make high risk, high reward investments. 

When you’re young you can afford to throw a few hundred dollars at some risky investments because the potential of return on those investments is really high. For example, a few years ago Tesla (TSLA) was considered a risky investment because it was new tech, could it have failed? Sure, but did those who threw some money at it in those early years cash out big? Yes. Another example was Netflix, that too shot up over the years. My point is, when you’re younger you can afford to take a risk with some investments that might tank because you have time to recover what you lose. My advice though is to invest in things you use, like if you have an iPhone, invest in Apple. If you have Netflix invest in that, or if you really want a Tesla but can’t afford one, buy a share. If you want to play it safe with your investment portfolio then maybe buy stocks that pay out dividends. You can run a quick Google search on stocks that pay you money to hold them, one of these is Coca Cola. These ‘blue chip’ stocks as they call them, are usually companies that have been around for like 100 years like Johnson & Johnson, they are relatively ‘safe’ investments that we think will continue to appreciate over time.

You might be wondering how you’re going to afford to invest and save at the same time with your low income job. Well, if you have to choose between saving and investing what feels more comfortable to you? You won’t go wrong saving, and you can lose it all if you invest in shitty companies or if the economy collapses. 

Investing is an art, saving is a discipline. 

Do one or the other or do both. This is your choice, but since I’m talking to my teenage self, I would say do both, if you have to save 5% of your weekly pay and invest 5% do that, but more is better.

Make calculated risks, and don’t risk what you can’t afford to lose.

Another high risk high reward investment is in crypto currency. If I didn’t mention that in this blog article I’d be keeping you in the dark. This sector of digital finance is revolutionary and can potentially make you a millionaire by the time you’re 20. People are comparing crypto related investments to the dot com bubble of the late 1990’s – 2000’s. The people who were early to buy domains made millions, just like the people who invested early into Bitcoin and held onto it made millions, and it’s not too late still, because mass adoption has not happened yet. I will go into different crypto projects in another blog post, but this blog wouldn’t be complete without mentioning crypto. My advice though is to dollar cost average in. That means every week or every month buy $5 – $10 of Bitcoin, you won’t regret it.

Download Voyager app to buy Crypto and get $25
free Bitcoin with this link.

Step 3

Put out quality content on social media.

Create a YouTube channel telling people about the things you know about. If you’re into skating, think of some content you can post that other people would be into. The idea here is build an audience that cares about what content you produce. It may seem like no one cares at first, but if you’re doing it consistently for a few years you’ll be surprised at how many people follow you and you’ll be surprised at how much money you could be making because of that. YouTube pays you if you have enough subscribers and if you have enough followers on any channel you’ll find ways to get paid by promoting product or getting sponsorship or what not. This is a long game to play before you see reward, but if you need a constructive hobby, I suggest building out a channel with consistent content, you never know. 

Step 4

Learn a useful skill that can’t be replaced by robots or A.I.

It’s important to remember that whatever you’re passionate about learning is going to be your career ultimately. If you’re like me and really into graphic design you’ll make as many things as you can in Photoshop and learn along the way doing so, but whether you’re into computer services like design, development, or programming or carpentry or plumbing or what have you, and you focus on being great at it, you’ll be well prepared for getting a high paying job. 

Obviously, there are some other things you can get into to make a buck as a teenager, but you also have to save time for just being a teenager and don’t stress about the economy collapsing and putting all your money into gold, silver or bitcoin to save yourself from hyperinflation and the collapse of the dollar. Go make plenty of bad choices so you know how to make good choices in the future, you’re still a kid and you should be reckless, but try to understand this system like you would a video game.

Money is a game, learn to play it. Understand basic math.

Money is a freedom score, the more you have the more time you will have in the future to go out and be reckless again, because let’s face it, you’re childhood is stripped from you to work 8 hours a day to pay taxes to the man, no other real important reason.

You are on a human farm and just like a cow get’s milked, you’re being milked for the money you make. 

Save money, invest, create and learn forever, you’ll be thankful you do when you’re 30. If you have any questions leave a comment below or reach out to me on Instagram @kyleknob. 

Categories
Programming

How Writing Helps Your Learning

It’s true, some cats are allergic to you.

I’ve been learning how to program with Google Flutter, learning their Dart programming language, which is an Object Oriented Programming language, which practically means its code is built with objects. I haven’t been studying long, but it is still a lot to unpack coming from a background in web design. I’m used to understanding HTML and CSS, so learning how functions make buttons work, and how classes store objects that you can create to run methods is pretty advanced for me. So this is how I’m digesting all this new information, through blog posts I share with other beginners. 

Since my last post, Programming Until You Get Headaches, I’ve covered so much new information that I need to unpack into this post that I’m afraid I might skip something. I’m still studying under Angela Yu on Udemy and we started on the Quizzlr app she created for us to follow along with and it’s all new information about Lists, If and Else statements or rather, Conditionals, and finally Classes and Objects. All of this information is a lot to consume at once so I’m taking my time, but by writing how this makes sense to me helps me digest all the new information a little better.

Testing Memory of Lists

This is how a list looks in a class.

I’m going to try to explain how a list works. You start with the syntax List and follow it with data type in these carats <>, so for instance, List<String> represents a List of Strings, following that you can title the List. 

List<String> favoriteWords = [ ‘Triple’, ‘Flinch’, ‘Flounder’]; 

This creates a list of strings called favoriteWords that are Triple, Flinch and Flounder (These are the first words that come to mind). You can refer to this list in your app by just calling on it with a positional number in the list starting from 0. I’m pretty sure I’d have to create a variable to call on it. 

int wordNumber = 0

Now if I wanted to print a word from the List I’d have to call on it like so:

print(favoriteWords[0]); — this is calling on the index of my list in the 0th position, which is the first in the list, which is Triple. 

Damn, I’m just getting started with this, because in the Quizzlr app I’m building, it gets so much more complex by inputting a List like this into a Class. I’m not sure if I can unpack all of this, but I’ll try. 

if, else, else if and whatever else

Listen I’m not a pro, and if you’re here to learn from a pro then go to stackoverflow.com, you’re in the wrong place, but if you want to try to make sense of programming like I am, through the eyes of a beginner, you’re right on track. This is an example of an if else statement in this app:

if (correctAnswer == false){

print(‘user is right’);

} else {

print(‘user is wrong’);

}

This statement pretty much just passes a print statement to the console if the condition is true or false, here is a bit about Conditionals

Conditionals

Button pressed conditional statement in Quizzlr app

The == translates as ‘is to’, while the = translates as make left hand = right hand, eg. Kyle = boy. Double equals, == is for conditional statements. 

== is the condition and inside {go();} is the instruction:

if (track == ‘clear’){

go();

}

Some more syntax that can work:

!=   Is not equal to

>   Is greater than

<   Is less than

>=   Is greater than or equal to

<=   Is lesser than or equal to

Combine with comparators

&& AND

|| or

! Not

As I learn more about conditionals I’ll give you some practical uses, but this here is just an overview.

Classes & Objects

A Class is a blueprint. A class has properties like color; numberOfSeats; etc & it has methods like, drive(); break();

With Classes, variables are now properties, and functions are now methods.

class Car {

int numberOfDoors = 5;  — property

  void drive() {   — method

print(‘Wheels turning’);

}

}

Object of this class:

Car myCar = Car();

OOP – Object Oriented Programming

Abstraction – functionality with different components, more complex systems with smaller pieces with more defined roles

Looks like you can create classes that hold lists, and classes to construct the list. Kinda mind boggling. 

I’m in the middle of this module, so there is still more to unpack.

Categories
Note to Self

How To Tell Your Friends You Started A Blog

I started a blog, obviously, but it’s weird telling my friends that I’m writing blog posts that I expect people to read. It’s like baking enough cookies for a party of 12, but it’s just you and me. I made too many cookies, or did I? 

Too many cookies bro
Guess I’m gonna just have to eat all of these

I’m telling people I’m starting a blog because I think it’s great practice to articulate my thoughts, but if I may go deeper then that, it’s because I can communicate through my higher self. 

Everyone Has A Higher Self

I’m not talking about my high self, when I smoke a bunch of weed and forget the sentence I just thought up, I’m referring to the subconscious. The elusive part of myself that is always retrieving data, storing it and guiding my intuition or my better nature. Not everyone’s subconscious is the same, so before you roll your eyes and think I’m just spouting out bull shit in my new blog I want to say that it’s a real guiding consciousness in our lives that we hardly are in contact with. 

Writing Puts Me In Contact With The Gods

Hey
Thank you for this flow

That sounds extreme, and it’s meant to, because well I’m writing a blog and I’m expecting you to be this far along and still holding your attention. However, if you’ve got an open mind, then you can imagine what I mean. The more freely you articulate your thoughts on paper or in a digital note pad, the more fluid wisdom just pours out. It’s almost like you’re accessing a part of your brain that you in 99% of your day you completely ignore. When I sit down and start to write about anything, I begin to type through this person that is talking to me, my conscious every day self. 

Kyle Meet Kyle 

We are constantly receiving information from all around us, like an antenna tuned into to a radio station. I believe that when I begin writing, I’m tuning the dial to this subconscious Kyle that doesn’t bother with greetings, it’s just like, “Duh, where have you been? You should go for a walk.”

I’m happy that I can talk through you Kyle, and I’m excited that I can wrap my mind around what this is now, I will go for a walk, thanks. 

Go for a walk
Go for a walk.

Be A Subscriber

I’m not shy like I used to be, so I’m going to directly ask you to subscribe to this blog. It’s full of important Me stuff, and information that you might be able to get some use out of as I continue to write.

I want to close this by saying that in order for me to keep this blog going, I’m going to have to remember one thing. Do not write for an audience, write for yourself. This is a blog intended for the conscious Kyle you see walking around society, skating down the street, playing a tune on a guitar. That Kyle needs some guidance and reassurance that he is on the right track, and to just relax, don’t stress, breathe, and make some damn money so you can get the hell out of Los Angeles already! 

Thanks for being a subscriber, if you have any comments leave them below, I know you have to have Facebook to leave a comment, so if you’re against Facebook, send me a DM on Instagram (A Facebook Company) @kyleknob or on Twitter @kylesshortcuts, thank you. 

Categories
Note to Self

How To Travel In A Pandemic

Pandemic Traveling
Keep it together.

Like you, I thought about all the dangers of traveling before I made my decision to get on a plane. So this is how I made my decision. Like all big decisions I weigh the pros and cons. In my case, I was offered a free flight from Los Angeles to Philadelphia to go to Woodward Skate Camp with my good friends at Dogwood Skateshop. What that meant to me was fresh air, a break from reality, and a very cost effective trip. I compared all these great things to the pandemic. 

Pros & Cons

I don’t think anyone can tell you how to make a decision to travel, but it is your responsibility to feel like whatever your decision you make is the right one. There are some reasons why you shouldn’t travel, like if you are a naturally anxious person about your health, or you’re a hypochondriac. In this case I recommend you stay home if you’re just going to stress about covid the entire plane ride. However, if you’re a little worried but think that your trip will alleviate some stress then go somewhere relaxing. The chances of you catching covid if you’re a relatively healthy person and you take as many precautions as you can, are slim. 

A lot of the fear surrounding covid is toxic and is causing way too much stress which actually inhibits your immune system.

Breathe through your nose deeply.

Prioritize Relaxation

Vitamin D is so key.

Unless of course you are traveling because of an emergency, make sure you’re getting enough time to relax out in the sun. The sun should be one of your priorities, take your shirt off, soak in as much Vitamin D from the sun that you can without burning of course. Your immune system will thank you. Breathe in some fresh air too and drink some clean water. Remember the elements: Earth, Wind, Fire and Water. Put your feet in some soil, breathe fresh mountain air, soak in some warm sunshine, and drink some fresh spring water. Visit findaspring.com to see where your nearest spring is at. Not that I went and got spring water on this trip, but I wish I did, I just drank plastic bottled water. I don’t know what’s worse, plastic bottled water or tap water?

Be Grateful for What You Can Do

In the end, this trip is about getting out of your routine and being with friends. This is such a strange uncertain time that I can’t really be certain if I can have many more of these trips, I don’t like to think too dismally, but it’s hard to know for sure, so cherish what you have right now, and what you can do. Flights are cheap, if you’re far from your family and your friends go visit them, tell them you love them, because you don’t know if you’ll ever get the chance to do that in person again. Be safe and be prepared for any scenario. If you have comments, want to call me an idiot or something, leave them below or reach out to me on Instagram @kyleknob.

Categories
Programming

Programming Until You Get Headaches

I been following along with my instructor Angela Yu on Udemy and I have been enjoying how clear and concise she is, however I really wish there was more explanation about the syntax of the Dart programming language. Like why use semi-colons instead of commas, why use curly braces here and not there etc. Maybe these are things I will look into when I find time, but it’s really testing my memory skills, and that is the sole reason I decided to get Lion’s Mane mushroom. Lion’s Mane is a medicinal mushroom that helps with memory amongst other things, and when taken with a small micro dose of psilocybin I find that installing those memories is much more easier. I do recommend you micro dose, there are amazing benefits, however I am not your personal advisor and if you are susceptible to intense anxiety, paranoia or psychosis you might not want to experiment with it and instead take more notes. 

Function Inputs or Arguments

To remind you, you create a function with a void keyword:

void nameFunc(){} — in this function’s empty parentheses () you can add data like you would a variable. For instance:

void greet(String personToGreet){} —  this creates the opportunity to use personToGreet in your function like so:

print(‘Hello $personToGreet’) — now if you’re going to call on this function you would need to add it to your void main(){} like so:

void main (){

greet(‘Kyle’);

}

This main part of your function will look between your parentheses in your greet() function you created:

void greet(String personToGreet){ 

print(‘Hello $personToGreet’);

}

This is how you pass data when you CALL on the function greet(‘Kyle’);

I’m not entirely sure how I’m going to use this in the future, but I’m sure there is a reason why she had told us about this. In this module I’m building out the Xylophone app, installing a package I found on the Dart packages website called Audio Players, importing it into my main.dart file and calling on it in my pubspec.yaml file to load sound files from my local assets folder. 

Building out this app was a small tutorial on how to pass an integer into the function that plays the sound when the button is clicked. 

void playSound(int soundNumber){

  final player = AudioCache();

  player.play(‘note$soundNumber.wav’);

}

When I press the button it calls on this function that is ran with:

playSound(1) or playSound(2) — replacing the number of my sound file in my assets folder to play a different note when another button is clicked. 

Making Use of 3 Types of Functions

Functions that start with void() have NO output, but can assume an argument between the parentheses that is a variable. If you don’t need an input it’s a function that just runs a series of steps. If you add an input then you can use that input variable in your function. The third type of function has an output and you call this by the data type you wish to output with this function. In the case of the Xylophone app we use a function to output an Expanded widget and use the inputs of the buildKey() function to specify the color of the Expanded() widget and the sound file to play when clicked, with a variable titled soundNumber, like so: 

Expanded buildKey({Color color, int soundNumber}){

  return Expanded(

    child: FlatButton(

      color: color,

      onPressed: () {

        playSound(soundNumber);

      },

    ),

  );

}

I emboldened the parameters that cannot be given a unique name to illustrate how this function is built. Expanded is the widget we are returning so we need build the function starting with Expanded and follow that with the name of the function we will later call, in this case buildKey(), but notice how inside these parentheses we add curly braces: buildKey({Color color, int soundNumber}) — the data type we are going to change is the Color property, and the data type of int that will be specified in the previous variable called soundNumber.

The curly braces are necessary only when we are creating a function that needs to specify the name of the data we wish to change. For instance we are going to need to specify the color when we call on the buildKey method like so: 

buildKey(color: Colors.red, soundNumber: 1),

buildKey(color: Colors.yellow, soundNumber: 2),

buildKey(color: Colors.blue, soundNumber: 3),

buildKey(color: Colors.purple, soundNumber: 4),

buildKey(color: Colors.orange, soundNumber: 5),

buildKey(color: Colors.teal, soundNumber: 6),

buildKey(color: Colors.pink, soundNumber: 7),

We are basically telling this buildKey function to return the Expanded widget, that has a child of a FlatButton, who’s color will be defined when we use the function (hence the Color color input when creating it), and when you press that button it’s going to run the function playSound we previously created that takes an input of an integer data type we called soundNumber. So that when we use buildKey(color: — we are telling it to look for the variable called color in the function color: color — built into the input of the function buildKey({Color color — the property of Colors.red, blue, green etc. will be specified by us when we call the function buildKey(color: Colors.red, soundNumber: 1) —  we then specify the soundNumber variable with an integer of 1 or 2 etc.

There’s a lot to wrap your mind around, but when you dissect the creation of the function it becomes logical, computers aren’t really a mystery, they just run off of logic and use keywords to know what you’re trying to tell it. So look at these functions, tinker around with the inputs, try to understand the syntax and why it’s written the way it is. We’re practically trying to imagine if we were a computer how this would translate to us in a clear way. It takes practice. 

import 'package:flutter/material.dart';
import 'package:audioplayers/audio_cache.dart';

void main() => runApp(XylophoneApp());

class XylophoneApp extends StatelessWidget {

  void playSound(int soundNumber){
    final player = AudioCache();
    player.play('note$soundNumber.wav');
  }

  Expanded buildKey({Color color, int soundNumber}){
    return Expanded(
      child: FlatButton(
        color: color,
        onPressed: () {
          playSound(soundNumber);
        },
      ),
    );
  }

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      home: Scaffold(
        body: SafeArea(
          child: Column(
            crossAxisAlignment: CrossAxisAlignment.stretch,
            children: [
              buildKey(color: Colors.red, soundNumber: 1),
              buildKey(color: Colors.yellow, soundNumber: 2),
              buildKey(color: Colors.blue, soundNumber: 3),
              buildKey(color: Colors.purple, soundNumber: 4),
              buildKey(color: Colors.orange, soundNumber: 5),
              buildKey(color: Colors.teal, soundNumber: 6),
              buildKey(color: Colors.pink, soundNumber: 7),
            ],
          ),
        ),
      ),
    );
  }
}

Headaches Be Gone

Don’t let the headache of learning control your attitude around learning, I must remember to have fun at this every step of the way and take breaks if I catch myself getting too serious. Remember to laugh at your own incompetence, you will learn, but you will learn at your own pace. If you have any questions or comments leave them down below or reach out to me on Instagram @kyleknob