Text
Weekly Progress Update #6
16 August 2022 - 23 August 2022
Still figuring out the situation with my computer. New problems arise. Won’t be able to do dev for a while.
0 notes
Text
Godot Control Nodes Rant
DISCLAIMER: This is a tame rant, nothing harsh or funny here.
I haven't used most of the control nodes until I decided to make an end level screen for my game, and oh my god they are terrible.
Restrictive Workflow
The workflow is awful. The control nodes are so disorienting with how many menus you have to manage. It makes the simplest things so hard to do. Instead of setting properties of containers, you have to add other containers to your current container. Want to change the margins? Put it in a margin container. Want to keep its aspect ratio? Put it in an aspect ratio container. In HTML/CSS, these properties can be standardized and applied in only one line of code per property. Imagine if there were several different types of “<div>” containers just to set a unique margin, padding, aspect ratio, etc for each instance of the container- that’s how it works in godot. And if you change your mind, you’ll have to delete nodes, reparent them, and change any code that references the nonexistent path. How clunky?
Some attributes can only be implemented in the node inspector and some can only be implemented in code; its so inflexible. This leads me to searching through a node’s inspector just to find the right setting that I need to change. As I’ve learned, I’ve found more ways to skip that process and code it in, but there’s still so much I can’t just code in.
I won’t even bother fully explaining how to format strings. Some formatting has to be part of the string text, some can’t. Some have to be entered in code and then replace the default text in the editor. You have to use this random made up mark-down language called BBcode in combination with GD Script. It has the limited in-line attributes just like Reddit's mark down. Oh how I take HTML/CSS for granted in these moments. You could just add properties to the container text so easily.
Redundant Nodes
Often there's several different nodes that could be combined into one node. There's vertical and horizontal scroll bars that could've just been one configurable scroll bar. But there is also a scrollable container which automatically creates a scroll bar, so why would it exist as it's own node? Turns out the game needs to keep track of the node in the scene tree, so it makes sense there, but it could mislead beginner to putting the scroll bar on a container and get confused why it doesn’t work.
I could also bring up the box containers. Horizontal box containers places boxes in order left to right. Vertical box container places boxes top to bottom. There is also a grid container which places boxes top left to bottom right. Why couldn't they just be all part of a grid container where you pick sorting alignment/order and the number of columns and rows? It all seems so bloated and redundant. It reminds me of the obsolete crap in Premiere Pro where there is like 8 clunky ways to do the same thing.
My guess is that they made the control nodes all fragmented like this because they thought it would seem simpler to beginner devs. That way they could see the ui element that they want and just drag and drop it in. "I want my boxes to go vertical so I'll just get the vertical box container". In reality, it actually does the opposite by over-complicating things.
Abysmal Documentation
To make things worse for beginner devs like me, the documentation for control nodes is sparse. Control nodes are visual features of UI and yet most documentation doesn't even have a screen shot of what it looks like, and there are no screen shots of the code it takes to make these things. There was so many times I had no clue what something was because there was just so little documentation on it, specifically tree nodes. Most Youtubers barely touch the control nodes, and for good reason, but it leads to a lack of supplementary tutorials as well.
Other Unnecessarily Difficult Things
List of things I can't do easily with Godot control nodes
Lack of responsive design. You have to cheat Godot’s terrible formatting system by increasing the minimum size targets to default size or your node will collapse its width and height to zero. This happens most often in box containers but can happen in other container types as well.
Changing font size. It requires basically re-importing the font at a different size and making sure it overrides the current theme.
I hope they can fix Godot’s control nodes. It needs to be streamlined. If they don’t want to delete and rework nodes, maybe they could create an alternative system like HTML/CSS that we could use alongside it. Or there could be new nodes like an all purpose “FormatContainer”; that would fix most of my issues with the workflow. It would create more overlap, but it’s already too late for that. If they cared so much about reducing overlap, they would remove and rework control nodes.
0 notes
Text
Weekly Progress Update #5
9 August 2022 - 15 August 2022
Well, I was hoping to finish my game by now. During week 3 I kept thinking to myself, "I've gotten very far and I hope to keep going, but I think I might get bored of this project and want to move on." Then at one point during the end of week 4 I thought, "Ugh this is getting kind of boring," and I started questioning if I should keep doing this. You can probably guess what decision I made.
I mentioned all of that because I'm no longer bored. To keep myself motivated, I try not to let my brain associate my project with boredom. Walking away and coming back when the feeling has passed can work if executed right, but you still have to keep the momentum going. I would usually have to consciously redirect myself into something interesting that contributes to the project, but it seems I've done that just by adding something I wanted to add: ui.
I haven't used the control nodes much in Godot, but oh my god they are terrible. Click here to see my entire rant about them.
Anyway, here is what I have accomplished:
Created an end level data screen that displays what types of customers you've served.
Began coding a next level scene changer. It’s currently really broken and I might need to reformat the nodes of my game a couple times
Here’s why I didn’t do much this week:
MY LAPTOP BROKE*
For 3 days I couldn’t use my computer without it randomly shutting down. Then, it gets stuck in a loop of shutting down and rebooting again. On the third day I had a successful reboot and in the diagnostics it said something about the fan and the internal temperature.
The laptop has tiny air vent holes on the bottom, which leads to poorly designed airflow. I’ve sat down in my back with the computer on my legs in a sit-up position and there is airflow between my legs, so I don’t know how it was overheating from just running godot. And airflow wasn’t a problem when my computer barely ran Overwatch and sounded like an airplane, so I think maybe the fan broke or something.
To preserve my files, especially my game files, I stopped using my computer. I can still access it for short periods of time, but I’m not going to risk it. If I risk it, I could lose access to the files forever. There was some warnings about the hard drive disk as well and I’d hate to lose so much.
The good news is I’m getting a new computer. It’s a beefy desktop that can run high intensity programs. It’s my dream computer that I’ve wanted for over a decade and I’m so lucky to be able to say I’m about to get it.
I’m also going to use the last two months of my warranty to try and get my laptop serviced. That will take about a month, but before then, I will try to move my files out of the laptop in case something happens when it’s getting serviced.
The next weekly update likely won’t include any game development as I’m setting up my computer and getting ready for the semester. It’s unfortunate that I lost my chance to try and get the minimum viable product done before I get back to school, but I might still have time to get back on the project.
0 notes
Text
Weekly Progress Update #4
2 August 2022 - 8 August 2022
Satisfied customers now fall behind unsatisfied customers (z_index -= 1).
Added customer spawn intervals aka a timer that waits a bit before it spawns another customer.
Customer spawner now keeps track of current customers on screen, maximum customers on screen, total customers spawned, total customers satisfied, and the customer quota per level.
The player, products, customers, the customer spawner, and customer spawn spots all inherit information from the level parent.
Reverted customer movement from linear (set global position) back to vector-based. I liked the linear movement because it was more smooth, predictable, and arcade-like, but it ignored collisions. Move_and_slide helps take care of the collisions for me, and velocity dictates the vector. Hopefully the extra calculation won't slow the game down. It's a lot easier to do it this way than to code specific collisions.
Finalized random pick system. Before today (August 5th), I didn't really understand how the code worked. Last night and today I spent time trying to explain it to myself. After I figured out how it worked, I figured out how it didn't work. Then I came up with my own way to better calculate a randomized pick system with probabilities. It works great and I'm proud of myself.
Here's how randomized picking works:
Customer type rarities and lane spawn rarities are put into dictionaries in order from highest to lowest pick rate.
The respective picker randomly picks a number between 0 and 99.99
The function checks to see if picker number is in the current rarity's range.
If it comes back true, that is the lane or customer type that will spawn. If it comes back false, it will move on to see if the picker number is in the next rarity range until it finds a range it fits in.
I've spent basically two weeks on figuring this out considering I'm the only person who has done it this way. I have only seen one other person that did it in a similar way, but they did it manually while mine automatically creates the ranges. My lane picker also has to check with the spawner spots to see what isn't occupied.
I'm still not sure if I'm supposed to post this the day after so that it includes the work I do the day of, but today I'm posting it earlier. I'm going to have to restructure the game a little bit to account for new levels so I think its best to show a workable build while I can.
What's next:
Penalty system
Level transition and advancement
Complete the win condition event
Starting cut scene for each level
0 notes
Text
How to make a game fun
These are just some general tips that can be applied to any game.
• Give the player many decisions to make so they don’t get bored.
• Let the player have bad options available, that way they will feel rewarded for making a good choice.
• Make sure that player decisions are impactful. They want to feel accomplished when they do something right.
• Implement some form of progression so they feel rewarded.
• Indicate when the player has made a bad decision in a way that they can learn from it. If a bad outcome feels like it’s their fault, they feel as if they have the power to prevent it from happening again. If a bad outcome feels like the game’s fault, the player will feel powerless as if they have no control over whether they win or lose.
Specific tips
• The more play style options you have, the more players will enjoy the game. Social gamers, solo gamers, competitive gamers, casual gamers, achievement hunters, creatives, explorers, and completionists are just a few types of gamers.
If you want to create a structured playstyle, give the player a purpose.
1 note
·
View note
Text
Parody doesn't protect against law suits
Parody is protected under first amendment rights, but not all parody is considered valid and harmless. Whether or not a work is considered parody all comes down to a fickle decision of the courts.
For my game, I thought it would be funny to use the same font and a similar background color of a real business logo. But even though my parody logo would have a different name, I was partially concerned about the legal ramifications of this, so I did some research.
According to the Legal Information Institute, this could fall under dilution (by blurring or tarnishment) and disparagement. To put it simply, you won't be legally protected if you mock a business with a vaguely similar version of its trademark. It seems kind of absurd considering the fact that the whole point of parody is to make fun of something, but corporations are the ones influencing law anyway so we should expect them to set up legal defenses for themselves.
If the court decides it is a recognizably similar logo, that might not be enough to build a case around you. However, If you intended for your logo to be associated with the company's logo, especially to harm the associated company's reputation, you're done for (15 USC § 1125 (c)(2)(C)). As unfair as it is, the more popular a company is, the more they have against you (15 USC § 1125 (c)(2)(A)).
So if you plan on having a gotcha moment by making fun of the logo of a place you used to work at, I hope you would also be ok with that same company profiting off of the game you just made about them. Of course, non commercial work is mostly protected but not guaranteed.
Ironically, companies can compare their products in advertisements using the exact same logo as another company. They can use their power to devalue another company's products or services BY NAME to millions of people, but small independent creatives can't make a loosely inspired parody. It just goes to show how its all their game and they get to make the rules.
I just wanted to put this post out there to remind fellow game devs to be aware of the risks of parody. I am not a lawyer, this is not legal advice, and its all without warranty of being correct.
0 notes
Text
"Productive Devs" Rant/Vent
Content Warning: Degrading Language and Harsh Criticism. I'm currently emotional and insecure; I don't normally act like this:
"I made a commercial game in one week," ok but how many bitches did you get in one week?
In all seriousness, I'm kinda sick and tired of random people going on the internet to brag about their ridiculous accomplishments. I'm over here taking almost a month to recreate an arcade game and this goodie-two-shoes study-with-a-buddy millennial is out here making monetized product.
Good for you stinky. Are you going to use that money to buy some soap that doesn't smell like sci-fi dead body like every other man marketed hygiene product, stinky? Are you going to buy something for your nerdy collectible shelf that spans the entire wall of your apartment living room? Maybe a funko pop? Is that what you'd like?
Devlogs
You'd think a video like that would be a way to help people. Aside from tutorials and game design discussion videos, I see tons of videos people make about their indie games where they transparently document their progress to show new devs what to expect. The videos show people how long development takes, how to publish a game, how much money devs might expect to make, etc. This video is a devlog but more like a poop log because I said so.
Being someone who is also making a game with dev logs, I have to say that documenting things is hard. It takes time out of your day just to keep track of what you've done, and I struggle to get my weekly updates out in time because of how dependent it is on where I am at with the progress of my game. I can't show something almost done because the game won't run with errors, so I end up having to work on it for another day and release it the next day with additional changes.
Expectations
And I don't like how unrealistic this poop log is. Maybe I'm just frickin' dumb, but in ACTUAL game development, every feature ends up having to be re-coded and tweaked 20+ times. There's a lot of nodes, scripts, and scenes to keep track of, and all of them depend on something else in order to work.
It is CRIMINAL to expect a beginner dev to get anything more than a tech demo done in less than a week, and content like this leads people (me) to becoming insecure and hopeless in comparison. When you say "this is what you SHOULD be capable of" other people say to themselves, "why can't I do that?" Once people start believe they can't do it, they won't try. By making that kind of content, you create and feed into issues that have plagued the indie gaming community for decades: the inhibitory fear and shame about getting started.
I think it is very important to acknowledge why people succeed. Its destructive to compare yourself to others in a one-dimensional way: they have that, I don't. Its more constructive to examine what it took to get them to where they are. Sure, this person made a game in a week, but its also their 15th commercial game they've made out of the dozens of other games they've made. I didn't know what an array was one month ago. Knowing what I know now, I could remake what I have done in a couple days because most of my time was spent learning the coding concepts that weren't so obvious and easy to me as they are now.
Conclusion
If you want to document your progress, that's fine. If you want to celebrate your accomplishments, that's fine. If you're going to brag to random people, prop yourself up as a clout chasing productivity god, and try to make others feel lesser in the process, then you can sit the fuck down.
In the end, everyone should know that bragging only puts a target on your back. If you really are that good, people are going to try to take advantage of it. They will copy your work, steal your work, or hire you just make profit off of your work. Every time you brag is an opportunity for someone else to show that they can do a better job than you.
If you're really that good at making quality games very quickly, why don't you try to make something people would give a fuck about instead of these corny ass, unoriginal, low effort, puzzle platformers that somehow win every game jam.
After Thoughts
I'm going to be completely honest: this whole post was made out of insecurity. I'm usually not insecure about anything, but I've been struggling with the feeling that I'm less capable. This person's video is harmless. They're just posting a personal challenge they made for themselves.
This person isn’t propping themselves up as superior to tag a group of people as “inferior”. However other people are doing that and I am talking about them too. Those delusional "learn to code in 2 months with zero experience" type of channels are preying on ignorance and insecurity by spreading misinformation, usually to get people to pay for their shitty courses. I get people have to earn a living but at least try to be a proper teacher instead of an absent minded passive income hustler who doesn’t put time into their course.
2 notes
·
View notes
Text
The unspoken rule for (indie) game devs
I personally believe that there is an unspoken rule in game development: if you created something that a lot of people would benefit from, and there is no tutorial for it, you should put that information out there to help people.
I'm not saying you have to make a series about how to build the game you just made, but if there is a cool mechanic that you know a lot of people would like to emulate, why not share?
Jon Topielski is a perfect example of this rule. He's made a lot of games, and every so often he creates a tutorial about a specific element he knows people would use. He's made tutorials on Earthbound battle backgrounds and RPG textboxes just to name a few. Its these specific features that so many people want in their games, and he's made a great service of showing people who to make them.
I'm not saying this is a rule just because of my own moral view. The indie game dev community has always been a grass roots community full of passionate creators that depend on each other. Other people go to school when they want to learn something, but we don't have that luxury. There is no path laid out for us to follow in order to be a game dev. These game design schools (scams) don't teach people what they will need to know, and everyone ends up having to figure it out on their own with the help of an internet full of resources and skilled strangers.
If you won't do it for other people, do it for yourself. If you can work on being able to explain what your code does, you will understand it better. Plus, Youtube videos can be very profitable. If you build a channel full of tutorial videos, you'll have a huge platform of passive income as the constant stream of new devs come to watch your tutorials.
0 notes
Text
Do you know coding but you don't know coding?
If you've ever tried to learn a spoken language, eventually you'll get to the point where you understand it so deeply that you don't know what you know. You'll intentionally say something, you'll know what it means, but when people ask you to translate it you can't. Its like you partially understand it enough to use it but you can't describe it well.
That's something I'm starting to experience with coding. I kinda get what I just programmed, but don't ask me to explain it.
I just wanted to share this and also warn people. It is bittersweet to be able to code but not completely understand what you're doing, and it can lead to issues later on. All of us should take time to break down what we did to have better control ourselves.
0 notes
Text
Weekly Progress Update #3
26 July 2022 - 1 August 2022
Surprise, I'm still motivated. The first day of this week, I said I'd take a break after getting overwhelmed. I sort of took a break, but I mostly just took things slow. I kept working on the project in ways that I could: developing ideas and cleaning up some of my code. It gave me a chance to work on my coding readability and it looks more attractive than ever.
Reformatted my code to be more readable
Finally figured out Singleton's and Godot Auto load. I implemented something similar to global variables to store stage data.
Rewrote Customer code. Tapper customers had a clunky back slide, and my customers were even worse. They had to slide past and behind other customers to the end of the line. All of the collisions and areas disabling and re-enabling was complicated, especially once they had to get back in line. This version of customer movement and behavior was just asking to be buggy. I couldn't implement it properly, and it didn't make any sense from a realism or game design perspective, so I dropped it. Customers now behave more realistically, and in a way that won't introduce bugs so easily. They move, get a product, stop and wait for their final product, and walk out once they get it. It's simple and easier to keep track of from a player perspective.
Implemented a Timer. As previously mentioned, when a customer receives a product, they stop moving and wait for the next product. If the player leaves them, or the customer's patience timer ends, the customer begins moving again. Its more complicated than what I just explained in my last bullet point, but not complicated enough to be confusing. They behave similarly to how a real customer would behave.
Customers now have a linear movement pattern instead of a modified exponential one like the player
Added 2 new customer variants. Patient customers wait no matter what , and oblivious customers can't take product and must make contact with the player to come to their senses. Patient and basic customer have a random demand of 1 to 4 products (accidentally 0 to 4). This has since been changed so that basic customers demand 3 products while patient customers demand 4.
FINALLY added random customer type picker and random lane picker. Spawner code still needs work and I can't show it because it is broken right now. I'm also not sure if the lane spawn pick-rate is functioning correctly.
What's next?
Checks for open spawn spots
Adjust lane randomizer to only allow open spots
Disabling monitoring for served customers (still haven't solved it)
Level specific spawn data
Connecting customer instance signals to score board
0 notes
Text
Taking a break from game development. It’s getting very overwhelming. I don’t want to burn out and quit my project so I’m going to come back in a couple days with a clear head.
My game has so many problems that intertwine with each other that I have to solve multiple at once in order to solve one. Godot lacks so many features that seem essential and it’s really disabling.
0 notes
Text
Weekly Progress Updates #2
19 July 2022 to 25 July 2022
(DISCLAIMER: my last entry was accidentally 8 days instead of 7, that is why there is overlap. I included some things I did on the morning of the 19th, so here I will include my work from that afternoon.)
I animated a phase-in introduction to my portfolio site with CSS.
I decided to temporarily stop Khan Academy and Web Development to focus on the game I'm making. Right now is the best time to do Game Development because once school starts again, I won't have time to work on this.
I enjoy working on it and seeing my progress. It makes me proud of myself. Here's a few things I've accomplished:
Coded collisions
Coded the create drink action
Coded the interaction between drinks and customers
Everything looked fine as if it was working great… until I began coding the customer spawner. It revealed existing problems, but also introduced new ones.
The random number generator for spawn locations was hard enough to implement. It's still incomplete because I have to implement different spawn rates for each lane, but it only took me a couple hours today to get where I am with it.
Meanwhile, I spent 2-3 days trying to solve those problems I explained (in text) in my video. Today I asked people on Reddit and just ended up confusing the one person who stuck around to help me. I'm going to need to get desperate in these discord servers.
I frustratingly learned first hand that Godot won't let you read or write certain variable types from other nodes and scripts, which seems like a basic necessity of a programming language in my opinion. To give it the benefit of the doubt, I think its too soon to say that my game can't be built in Godot engine. There has to be some way to implement this.
Additionally, player, drinks, and customers all have to retrieve data about stage specific lane margins, and I hate having to rewrite them for each script. It's incredibly inefficient now, and even more so once the game has different stages with different margins. I desperately require global variables for this data, but there are no global variables in Godot. I guess I'll have to take a look at auto-load and singletons again, despite that I can't find a way to import arrays from the global script to a different script. I don't think using enums and dictionaries are the way to go with coordinates, but they might be the only options besides making a custom var for every x and y coordinate individually.
Here are some of the things I know how to use:
(Some of them I barely know)
Animation Player
Area 2D
Autoload/Singletons
Creating Instances
Custom Functions
For Loops
Max
Min
Move and Slide
Preloading Nodes
RandomNumberGenerator
Resources
Setters and Getters
Signals
Other specific functions and methods
What I need to learn:
How to share variables between nodes (checking states and sharing arrays)
How to temporarily disable Collision2D
How to randomize with a pick rate.
How to use a resource
How to connect a signal to a group of nodes Nevermind, groups can't emit signals themselves
0 notes
Text
Unique != Profitable
Why do people say your game has to be unique to be profitable? It's probably because uniqueness is a powerful marketing tool. Our brains are trained to seek out anything new, rare, novel, and significant, so we are more likely to remember it. If you have played a game until it was no longer fun, other similar types of games become unappealing and unfun as well. If your game is unique enough, it won't have that problem.
However, uniqueness isn't always to your benefit. If executed poorly, a game will become so unfamiliar that it won't be palatable to large audiences. There are some genuinely good design choices that should be followed, and trying to completely step away from them for the sake of originality is a bad idea. It's easier for people to get into your game if they can bring in skills from other games. If the controls are familiar, they won't feel like they have to relearn the basics. Instead of spending time confused by a foreign experience, they can just focus on the game ahead.
I'm not trying to say that you should copy successful games, or that trying to be a unique is always a bad idea. I'm just trying to say that if you can make a game that is unique enough to feel fresh, but familiar enough to be understandable, you've hit the sweet spot. And if your idea is kind of basic, that alone won't keep your game from being profitable, you'll just have more to compete with.
0 notes
Text
Why you should stop making art for an unfinished game.
If you haven't finished your game, you can't be certain of what art you need. You might end up deleting or replacing something you didn't plan to. Don't waste your time making art you aren't sure will get used.
Start developing your game with placeholder art. That way, if you end up changing something, you won't have to remake the art. After you've made sure the game feels good, you can start to make it look good. This process is known as grey-boxing.
Personal Anecdote:
When I was overwhelmed by not knowing how to implement things, I would just get lost in the art. Because of this, I would lose interest and burn out before I ever got into the coding. All that energy I could've spent learning and improving myself was wasted on some art assets I've since lost on my computer.
Motivation is a scarce, limited resource. Don't waste it on perfectionism and procrastinating.
If you're overwhelmed, the best thing to do is just slow down and put less pressure on yourself. If it helps you, you may need to leave commitments and deadlines behind. I had to quit a game jam to focus on making sure I gave this game time to be figured out. If you end up having to do this, just remember to keep working on it instead of giving up entirely.
If your life doesn't depend on it, what's the rush? Slowly is the fastest way to get to where you want to be. You're not making the entire game all at once, you're just trying to implement one thing at a time. If you manage your motivation, you will eventually solve whatever problem you're having.
1 note
·
View note
Text
Weekly Progress Update #1
12 July 2022 to 19 July 2022
My first week of dedicating myself to this path is over. Here's some of my accomplishments:
I started and completed the Algebra Foundations unit on Khan Academy.
I coded and stylized the front page of my portfolio website. The background and title/name are still unfinished.
I finally figured out array's and coded some vertical movement for a game. Can you guess what game I'm recreating?
I also completed the horizontal movement today after I wrote this post.
I coded the inputs to print updates in the debug log which really helps keep track of if the code is working.
I think I'm doing pretty good so far, though I had a head start with the HTML/CSS course that I took.
What's next:
Algebraic expressions unit on Khan Academy
Movement of other objects
0 notes
Text
How to learn... how to learn code
That title is not mistyped. My analytical overthinking is kicking in again with the meta-questions. Self taught or not, how do we manage our time and motivation to learn code in the best way possible?
If I try do it quickly, I'll have gaps in my learning and have to go back and re-do everything to the point it would take less time to just learn what I needed to.
If I try to be a perfectionist, I'll learn unnecessary things and waste time. I'll end up being well researched but behind everyone else in the industry.
How can I go fast enough to enjoy it, stay motivated, and avoid burn out? How can I go slow enough to understand it, avoid getting overwhelmed, and have something to commit to? How can I do just enough work?
In order to work smarter not harder, I need the discernment to make good decisions about what to learn, but discernment comes from experience. That means I would have to listen to experienced people. Even then, I have to have discernment to decide which experienced people to listen to.
If you learned anything from this post, its that over thinking by itself doesn't get you closer to your goals. The more time I spend writing, thinking, and reading about what I'm about to do, the less time I spend actually doing it. That being said, overthinking can be worth it as long as you think in such a way that constructively solves problems instead of anxiously obsessing over them. Either way, you just have to get started, no matter what combination you have of listening to other people and doing it yourself. After that, the knowledge and discernment will follow behind your motivation.
Motivation is a force that will take you to the end as long as you have it. If you have that, the only thing between you and your goals is a lesson. When you know what to do, all you have left is to do it.
Now lets get specific about coding.
Obviously, the best place to start is with learning the foundations and prerequisites. That's why I started Khan Academy to brush up on my math. Admittedly, it's somewhat busy work, but if it ends up being unnecessary, I don't mind doing it for an hour or two a day for self improvement. My most solid experience is with HTML5 and CSS, which requires very little math, but who knows what language I could move on to.
Aside from that, I'm not sure if there's any mutual foundations for coding languages. They all serve different purposes. For the languages that are similar, once you learn you've learned one, you've learned the others, or so I've heard. Don't quote me on that.
It seems like the best way get started is to look at a coding roadmap to see what foundations you need to learn. I've seen a few road maps on Youtube that I recommend:
devsmak
I hate watching fluffy idealistic videos made by delusional people, they're rarely helpful. The only thing I end up learning from them is to avoid drug abuse. One of my favorite road maps is this video by devsmak. I love how realistic, practical, and honest he is in his videos.
youtube
codeSTACKr
I also love this video by codeSTACKr. It's short and sweet and I like his inspiring, hopeful message at the end. I haven't seen any of his other videos though. He has a great resource in his video.
youtube
That's all for now. I just wanted to use this post as a way to rant, voice my frustrations, and figure out my problems. Think of confusion as an opportunity to learn and life will be much kinder to you. And also, follow a road map.
0 notes
Text
Why you won't get high demand (coding) jobs
Let's say your main goal is to find a job that has the highest likelihood of getting hired.
On paper, you are more likely to get a job that is in high demand because there would be more jobs. However, the more competition there is for a job, the lower the your chances are for getting it.
So in reality, when it comes to building a career, you should find a niche. The more necessary you are, and the harder you are to replace, the more job security you have.
As for the specifics, I don't have many tips. Not only do I not have a coding job, I know very little about what it means to have a coding job. I don't know what kind of companies need what, I don't know what the expectation is for coders.
The only thing I do know is that corporate greed will often lead companies to hiring not enough people to get the job done and they will always try to get you to work as hard as you can. How ever you can, don't let them over work you.
Its their company, but its your life. They can always hire someone else to do your job, but you're the only one who can live your life.
0 notes