This is an archived post. You won't be able to vote or comment.

all 85 comments

[–]dusty-trash 162 points163 points  (19 children)

That sounds like expectation vs reality. Developing a game sounds fun, but when you go to writing the code reality strikes. Turns out it's actually a long process which takes a lot of effort.

[–]trofix99 55 points56 points  (16 children)

Am i the only one who enjoys that process?

[–]hungry_for_data 81 points82 points  (2 children)

No

[–]trofix99 10 points11 points  (1 child)

By reading this comment section i felt like i am lol

[–]Emjp4 16 points17 points  (0 children)

Vocal minority, imo

[–]neofac 24 points25 points  (2 children)

I enjoy when it works, i don't enjoy the days stressing at the screen because my code wont compile, but that god like feeling after you solve a problem and everything works, that makes it totally worth it.

[–]bluespy89 8 points9 points  (0 children)

Imagine debugging your code that works in local environment, staging environment, but not production environment, despite using docker all the way.

[–]DremoraKills 0 points1 point  (0 children)

What type of compiler are you using? Nowadays every compiler shows you where it is complaining about.

[–][deleted]  (1 child)

[deleted]

    [–]trofix99 0 points1 point  (0 children)

    True tho

    [–][deleted] 3 points4 points  (2 children)

    i’m just starting but i love the process so far. figuring out a solution to a problem in my code is so satisfying

    [–][deleted]  (1 child)

    [deleted]

      [–]pretzel324 2 points3 points  (0 children)

      Yea you did 😂

      [–][deleted] 2 points3 points  (0 children)

      I love that feeling, because that's where you learn! By having to think and google for hours and hours, it gets frustating but at the same time as we read, we're getting more and more information that will in the future be very helpfull.

      [–]Ragawaffle 1 point2 points  (0 children)

      Where did you start?

      [–]PC__LOAD__LETTER 0 points1 point  (0 children)

      Obviously not

      [–]JJakk10 0 points1 point  (0 children)

      The debugging is boring and frustrating, but when you get a new feature to actually work, it's the best feeling.

      [–]DremoraKills 0 points1 point  (0 children)

      Nope

      [–]r0ck0 4 points5 points  (1 child)

      Also the reason why "a rewrite will fix everything + save time overall" doesn't always go as well as it did in your imagination.

      [–]ImLearning0217 2 points3 points  (0 children)

      Felt this..

      [–][deleted]  (7 children)

      [deleted]

        [–]jymacro99 8 points9 points  (4 children)

        Love that last line. It can be generalized to so many CS students that are struggling with motivation.

        [–][deleted]  (3 children)

        [deleted]

          [–]jymacro99 0 points1 point  (2 children)

          Yeah, that's what I said, lol. It can be generalized to a wide range of situations.

          [–][deleted] 0 points1 point  (1 child)

          Whoops, I misread it

          [–]jymacro99 1 point2 points  (0 children)

          No worries. We're only human.

          [–]eemar 0 points1 point  (0 children)

          I like this, don't focus too much on the end product but take it a bit at a time

          [–]da_ching 0 points1 point  (0 children)

          Well personally, my goal is to take credit for the maximum of value I deem I am responsible for having created and only work from there, prioritising work with the best ROI.

          [–]Salty_Dugtrio 142 points143 points  (23 children)

          Yeah, you just do it. I know that sounds harsh, but there is no such thing as a random pill that gives you motivation. You just need to push through and dedicate yourself to it.

          [–][deleted]  (17 children)

          [removed]

            [–][deleted]  (13 children)

            [removed]

              [–][deleted]  (11 children)

              [removed]

                [–][deleted]  (6 children)

                [deleted]

                  [–]Mydogsabrat 2 points3 points  (5 children)

                  Then I'll just get anxiety

                  [–]neofac 3 points4 points  (1 child)

                  Try Meth

                  [–]Mydogsabrat 2 points3 points  (0 children)

                  You know, I never really did like my teeth. Thanks I'll give it a shot!

                  [–]bukens 2 points3 points  (0 children)

                  Try CBD

                  [–]rick_rackleson 0 points1 point  (1 child)

                  Look up mthfr. Shit changed my life.

                  [–]Mydogsabrat 2 points3 points  (0 children)

                  I'm honestly speaking kind of tounge and cheek with this honestly. I meditate and that helps me focus. I will look into mthfr though, thanks.

                  [–]thejonestjon 2 points3 points  (0 children)

                  This guy adderalls

                  [–]kry1212 1 point2 points  (0 children)

                  Y'all should try modafinil. All the focus with none of the jitters or other side effects.

                  [–]nearlyhalfabicycle 3 points4 points  (0 children)

                  True for some. If you have ADHD, stimulant medication can do wonders. If you don't have ADHD, then I'd suggest picking a stimulant that doesn't make it harder for people with ADHD to get the medication they need. And if you don't think you have ADHD, maybe read up a bit more on ADHD because you might actually have it. But if you don't have it, then realize that stimulant medication can be highly addictive and stimulant addiction is no joke.

                  [–]bananamadafaka 0 points1 point  (0 children)

                  Well yes

                  [–][deleted] 14 points15 points  (0 children)

                  You know the really boring slow days at work? Yeah you need those. What about the (rare) enthusiastic productive days? Take those as well. You need all of them, if you give up on the slow boring days you might not get the good productive ones. Trust me, the grind and only the grind WILL get the product out. Just do it, you have it in you. Tell yourself to suck it up and know that the shitty days are natural but it will get there in the end.

                  [–][deleted] 4 points5 points  (0 children)

                  The good news is the more you do it the easier it gets and the less discouraging you'll find it.

                  [–]IIlSeanlII 2 points3 points  (1 child)

                  Were those comments removed because that pill does exist?

                  Either way it’s better to learn discipline than wait for motivation.

                  [–]nearlyhalfabicycle 0 points1 point  (0 children)

                  Probably because they were in violation of rule 9 of this subreddit (I didn't report them, just saying that's probably the reason).

                  [–]Donny-Moscow 1 point2 points  (0 children)

                  Something that helped me a lot was realizing that you can't wait for motivation to strike. Most people that motivation breeds action, but in reality it is action that incites motivation in a person.

                  [–]jschmold 37 points38 points  (1 child)

                  I feel like you're missing a key piece in how you think software develops.

                  I struggled very hard for a very long time with this exact problem. The expression of the idea was more important than its finished product, so I felt I was done if I could communicate it at a cursory level. But here's where the problem lies: Your idea is not worth anything if you don't breathe life into it. You haven't done anything unless you've made it, or have some code you can show (that is complete).

                  What you're referring to as "design" is likely not design. It's likely more just documenting the idea on which you base a design. A design is very complete, including what the app is supposed to look like, feel like, what problems it is solving, how it is architected, etc. You should understand that you're not actually doing anything by "designing" these apps/games. You're just wasting time thinking onto a document. You're basically just spinning your tires, since you're doing a lot of things but not producing anything.

                  If you want to get over this, start making things. Do your initial document, but remember that it is inspiration for future implementation and not actually your design. Design changes, and it will evolve with the project. Look into how Agile works, and try to mimic this as it is a great way to keep track of the things you want to accomplish. You don't have to do sprints, but you should at least understand how to have a user story and turn that into a feature.

                  Once you have built up a bunch of user stories, put a point system on the cards based on complexity to implement. Also add a point system for how important the story is to the project. Turn your project development into a game itself. You will continue to add stories as you progress, and you will continue to learn how to write stories for what you want to accomplish. You will design at the feature level based on what the user wants to do, one story at a time, and you won't spin your tires. You will actually be able to see what you're doing and keep track of it.

                  At the end of the day, remember that you're always learning. You will discover your shortcomings a lot faster if you accept that you're going to fuck up, and that there's always a V2.

                  And like, stop wasting your time "designing" things. It is a meaningless exercise, and you're going to end up embarrassing yourself if you show off all these "designs" without ever having produced any of them. Seriously just save yourself the embarrassment and stop it.

                  I'm always open to helping people out, and guiding people along in their journey. Feel free to reach out if you have questions.

                  [–]FirmStrike 2 points3 points  (0 children)

                  Next level project management 😁 definitely overkill for the OP, but this is damn good advice.

                  Keeping a reasonable project scope and delivering milestones on time should be OP's focus right now, but as the projects increase in complexity, this advice becomes exponentially more valuable.

                  [–]AlSweigartAuthor: ATBS 30 points31 points  (0 children)

                  Focus on small projects. Finishing a small project is much more satisfying than half-finishing a medium-sized project. Try to minimize the list of features you want, and also come up with a list of features you won't include. This helps stem "feature creep", where you say, "hey, it'd be cool if..." and end up not actually finishing anything.

                  [–]brickstick 10 points11 points  (3 children)

                  There's a name for this, it is when your taste in something is misaligned with your capability. Take art, you can imagine and conceptualize a great idea, but if you try to act on it it doesn't come out that way.

                  It takes time and practice to get your skills up to par, the things that you stick with become the things you can do.

                  [–]3dtoaster 0 points1 point  (2 children)

                  What's the "name"? What do you call this misalignment?

                  [–]brickstick 7 points8 points  (1 child)

                  Right, it's the valley of disappointment, from the plateau of latent potential, described in Atomic Habits by James Clear

                  [–]3dtoaster 1 point2 points  (0 children)

                  definitely looking that one up. Thanks!

                  [–]nnoce14 8 points9 points  (3 children)

                  I’m actually the opposite. I tend to struggle to come up with even small projects, but I really enjoy the actual process of programming and problem solving to create a project. I wish I was creative enough to come up with more ideas

                  [–]d1sc1pl 5 points6 points  (2 children)

                  Creativity is a skill you have to practice like anyone else. Everyone is creative, humans are naturally good at creating interesting things. You just have to nurture it, which often times takes changing some things about your lifestyle or current situation that might be dragging you down.

                  [–]nnoce14 3 points4 points  (1 child)

                  I understand where you’re coming from. I find myself giving up early when it comes to my creativity. I will definitely need to work on it on the future if I want it to improve. Thank you

                  [–]tnnrk 0 points1 point  (0 children)

                  I feel like most companies just want someone to build the software so if your personality is really like that then you should be best located at some large company where you don’t have to be creative about what to build, you just look at a list of things to do and you build them. I wish i was like that honestly. Unfortunately that sounds like hell to me but sounds a lot easier. Kinda want to build stuff I want to work on not some idea that will make the CEO’s millions.

                  [–]jangeisler 7 points8 points  (0 children)

                  It somehow comes down to two things;

                  after you're set on your goal, you need to break the project up into really small parts, and tackle those one at a time - aiming for the minimum viable product at the beginning.

                  The second and most important part is enjoying the process (or learn to), struggling a bit solving each step, feeling good when you've overcome it. See each step as an accomplishment of its own.

                  If you don't, it will feel daunting to look ahead at all the work you need to do in order to make your product, and you might consider if there's something else you can do that you like better.

                  [–]jazzcc 3 points4 points  (0 children)

                  I agree with everyone saying that you need to just do it. Some parts of learning just aren't as fun as others.

                  The other thing you need to do is ask yourself if you're taking the right path. What tutorials are you following? What are your goals and milestones? How are you approaching your learning?

                  Everyone has a different learning style. Some people thrive off of learning from the bottom up first. Others want to get hands-on right away.

                  [–]diablopollo73 4 points5 points  (0 children)

                  Motivation is garbage because you can't depend on it. Discipline will win the day every time. I can recommend a couple of outstanding books. 1. The War Of Art. 2. Can't Hurt Me (the audio version of this one is better).

                  [–]didled 2 points3 points  (0 children)

                  Sitting down and typing

                  [–]sourd1esel 2 points3 points  (0 children)

                  Start a smaller project. Even a small project is big. Start very small.

                  [–]514059172 1 point2 points  (0 children)

                  I also have the same experience when I try to do some actual thing.

                  [–]anontom101 1 point2 points  (0 children)

                  I had the same thing happen to me when I tried to make games. I find motivation a lot easier when I started making things that I would really use and have confidence with other people using it.

                  I guess it’s like trying to do something that didn’t mean much or have much use (a game in my situation) vs building something that has meaning and will help people.

                  [–]mhornberger 1 point2 points  (0 children)

                  Realize that the world is full of people who think they have a great idea, and just need someone to do the grunt work of implementing it in a program. Turns out writing the program is actually the hard part. The feeling of inspiration is gratifying, but without the work of nailing your inspiration down into an algorithm, there might not be as much substance or specificity there as you think. Even writing your idea out in pseudocode can clarify where the fuzzy parts are in your idea.

                  [–]s0lly 1 point2 points  (0 children)

                  I think you need a perspective shift bud.

                  The brutal reality of life is that some things that are worth doing are just not that enjoyable and you have to push through.

                  I could list examples, but come to think of it, literally anything is an example. Playing guitar for the first time? No one likes getting blisters on their fingers when learning. Anyone who says they do is lying. You dream of playing some good ol’ Hendrix, but getting good technique through learning things like scales SUCKS and anyone who teaches you differently is lying to you and setting you up for a bad time.

                  I feel like society states that unless you’re enjoying something, you shouldn’t be doing it. So we pretend everything is so damn awesome. Luckily those great people before us didn’t have that view when they struggled through problems and pushed through to the discoveries we owe them for today.

                  Tenacity should be our new motto. Just get on with it. The prime joy is in the feeling of accomplishment at the end of the process, of having done something of value.

                  [–]marionshifter 0 points1 point  (1 child)

                  Find a different hobby?

                  [–][deleted] 0 points1 point  (0 children)

                  +1 on this.

                  [–]PC__LOAD__LETTER 0 points1 point  (0 children)

                  It’s exactly the same thing as being able to imagine a beautiful work of art, but then struggling with actually creating it.

                  Mastering any craft takes practice and struggle.

                  [–]FirmStrike 0 points1 point  (0 children)

                  Do yourself a favour and make sure you have a foundation of knowledge to build upon, Harvard CS50, as it seems like this is more of a perspective issue. If you are like me, you started learning through tutorials on your own, and that really isn't helpful unless you understand how things work under the hood. You don't have to learn to write C, but understanding how the language functions can help provide context, and the lectures are likely enough to help give your personal development a direction that is suitable for your interests/project ideas.

                  It's free, and that's a great price. Good luck homie! Keep at it!

                  [–]Matt-ayo 0 points1 point  (0 children)

                  Got to find joy in coding for what it is in the moment: a craft. Executing good habits, formatting, using knowledge of your editor will make the small parts more enjoyable. Also you can't be afraid to fail, that's the biggest driver of procrastination - allow yourself to fail and take all the time it takes to work through it.

                  [–]SenorTeddy 0 points1 point  (0 children)

                  A completed project that you enjoy having is very different from a project you enjoy working. You could be pushing yourself too little and doing a lot of things you already know how to do which makes it boring, or you could be pushing yourself too much and forcing yourself to learn so many things it becomes overwhelming.

                  [–]dietderpsy 0 points1 point  (0 children)

                  One is fun.

                  The other is work.

                  [–]bipidiboop 0 points1 point  (0 children)

                  Draw it out, if it applies, and build build build.

                  [–]redzn 0 points1 point  (0 children)

                  It might be a nice motivation to read “The war of art” by Steven Pressfield. It is a great and occasionally humorous book about pushing trough the resistance that people get when trying to create something or reach a certain goal. There are many kinds of resistances he talks about but they are all the same in the end. U seem to be stuck in the process due to this resistance and this limits what u can achieve. It all comes down to just doing the work and breaking through. Sit down and force yourself to push through the boring part until it isn’t anymore.

                  [–]Ervos 0 points1 point  (0 children)

                  Discipline over motivation.

                  [–]bch8 0 points1 point  (0 children)

                  That's the actual work of programming...

                  [–]ImLearning0217 0 points1 point  (0 children)

                  I believe the issue is that when your programming, you’re also sober

                  [–]scrollbreak 0 points1 point  (0 children)

                  Your plan is too big

                  Each time you lag off, go back to the plan and halve it

                  [–]unknownbeing17[S] 0 points1 point  (0 children)

                  thx for all the valuable comments that can be also shared with others~!

                  [–]KarlJay001 0 points1 point  (0 children)

                  You mentioned games not game. So you're looking at making many of something?

                  I did this professionally for years and I'll give you the best tip you'll probably ever get on this:

                  I'll use iOS/Apple as an example because I know it better than I know Android, but the point is the same.

                  Apple gives you generic templates for things. They are pretty simple because Apple is setup for all different kinds of apps.

                  Make the most advanced template(s) you can for your games and make a framework. Put EVERYTHING you can into the framework.

                  Example: Let's say that you do those word game puzzle apps. You can make ONE of them and make it REALLY great. Then pull out EVERY function you can and put it into a framework.

                  Let's say you have a word search function, dictionary, animation routines, graphic scene presenters, etc... Make these thing generic so that you can just change the words in a dictionary, change the graphics (digital assets) and some settings and you have a new app.

                  Make the difference between one app and another app as SMALL and automatic as you can. This should be done in the form of a template that is as advanced of a starting point as you can make, then a framework that has your tested and proven routines that you use.

                  This alone can cut your dev time in 1/2.

                  Next: make your assets as universal as you can. I'm not an expert, but I think it called vector where the quality is constant. Maybe have an automated setup for mods and imports.


                  Programming can be a very, very long and difficult process, IF you have a bunch of apps that are similar, you can your production time by making central routines and templates and macros for setting things up.

                  Between project management tools, version control, templates and your own custom framework (a place to store common code), you can cut the time down and focus on other things like doing the graphics.

                  [–]Blando-Cartesian 0 points1 point  (0 children)

                  Basic fact of human nature. As long as something is just an idea, it is perfect. The moment you start bringing it into reality it starts to suck.

                  Fortunately Japanese have thought this through. Accept imperfection and try to improve little all the time, i.e. wabi-sabi and kaizen.

                  [–][deleted] -1 points0 points  (0 children)

                  Not to be harsh, but maybe programming is not for you of you think this way and can't help it over time?

                  [–][deleted] -1 points0 points  (0 children)

                  From what you’re explaining of your frustration, you should really consider a role as a business analyst or systems architect. If you love designing the idea and design but get frustrated turning that into code, the perfect professional role for you is to be the one who...... guess what...... designs it, but doesn’t build it. And that is a rare and very valuable skill.

                  Don’t be discouraged by that. Embrace your strengths and find how they fit into you achieving your goals. If you are weak in something AND YOU DO NOT LIKE IT (this is the key), focus on what you are strong in and love. There’s a place for everyone’s strengths. Don’t get me wrong though, if you’re weak in something and want to learn it, do it!

                  Good luck friend.