• After 15+ years, we've made a big change: Android Forums is now Early Bird Club. Learn more here.

Should I give up? :(

stubbzj12

Newbie
Hey there. I'm new here. Feel like I need to vent.

At the moment, I'm just feeling really hopeless. I've been developing websites (as a hobby) for around 6 years, and because apps are becoming a thing now, I really want to get in on app development. I've took a course in android development with Udacity, and I know how to create a simple app. By simple, I mean create layouts in XML, do on click listeners, change values of TextViews, use intents etc (even pass data to new intents). I know how to create a VERY basic app, but I want to move on from basic to something more useful...

I really apologies for not being specific, but I'm not too sure how to explain what I'm going through. But I'm really having a difficult time understanding things like array adapters, and the code going into array adapters. This is one of the many things. No matter how much research I do, I still cannot for the life of me understand how any of it works. There's just so many methods and things that overwhelm me. Again, array adapters are one of many things I'm struggling with.

I'm so passionate about programming. So passionate. It's all I've ever want to do, and still want to do. It's my dream. However, I've been stuck in this place for a very long time (few years). I get so disheartened because I'm trying my best and I'm having no luck. I'm devastated. Sometimes I feel like it's not for everyone. Sometimes I just want to give up.

I see people just writing code like writing in plain English. It's still mind blowing how people can do this.

I have took tutorials on Java, and made good progress. However, when it comes to actually creating something useful, it's get's so complicated.

Not sure where I stand at the minute. I appreciate any replies.

Thank you!
 
Hi there. I can help you.
Nice to hear someone really getting into software development.
I can't post anything now because it's late here, and I really need to sleep, but if you can be a bit more specific about what you don't understand, I can offer some advice.
You first need a good knowledge of the Java language. Do you have that?
 
Hi there. I can help you.
Nice to hear someone really getting into software development.
I can't post anything now because it's late here, and I really need to sleep, but if you can be a bit more specific about what you don't understand, I can offer some advice.
You first need a good knowledge of the Java language. Do you have that?
Thank you! And no problem at all.

And I do have some knowledge of Java. I do know how some of it works. The problem is just putting all of what I've learnt together to create a useful project.

Again, thank you!
 
Hi. So you're now a independent developer? If you do know Java well, and still have no idea of how to create something useful, maybe you can work for a soft company for the time being. Seeing their products or sharing ideas with your colleagues may give you some clues.
 
I know how you feel. I can't and won't try to describe it but I am fairly sure I do. Just gotta keep on truckin' on. Don't give up - but breathers here and there may be good for you - don't overdo it!

Long term stress, and stuff like this can cause it, can have pretty rough impacts on your body. I'm 39 and going downhill fast with fibromyalgia, arthritis, and other issues and honest to god lots of it is due to years of non-stop pressure/stress according to my wife and I'm inclined to believe. (Because of how I feel during stressful and stress free times nowadays, body-wise).

Just try to take it a day at a time, do your best and have fun - do what you need to do to live your life career-wise, bills-wise, but don't give up on what you want to do.
 
Don't give up unless you truly feel that you can't do it, and even then, ask why. There's always going to be the rough spots, but if you power on through, you'll make it, and you'll be happy you didn't give up.
 
Don't give up man. We all feel like shit sometimes when programming, spending an entire day debugging and it ends up being something really stupid.

Try to set simple goals when you want to improve. Have an end goal, like releasing a todo app on the Play Store, create a board on Trello or similar and try to detail all the issues you need to do to achieve that. Try to make every issue as small and specifik as possible, then try to work on it as much as time and motivation will allow.

For me when I have trouble with something it helps finding someone explain it in a video, as opposed to reading page after page of documentation. Try to google for tutorials on YouTube, there's a lot of good material there. Then after you watch something try to implement it yourself.

One small step at a time, just don't give up and you can do it! The satisfaction will be immense when you succeed, I promise! :)
 
Hey guys! I apologies for being away for a while. Life happened!

I decided whilst I was away to just create some GUI programs with Java and JavaFX. I must say I've made some progress. I've created a few things like a full client management system, using SQLite then moved over to a MySQL database hosted with GoDaddy. It has a login system, super admin privileges and so on... I've learnt quite a bit since I last posted. I think I did the right thing by creating a few things with Java and taking a break from android development.

Now, I think I'm ready to give android another shot. I'm going to try study a bit before I even attempt to create anything major.

I really appreciate your replies, and I've read all of them. I'll make sure I'll let you guys know how I'm getting on. And, if I need any help at all to ask.

Again, thank you and I'll see you soon!
 
Bloody hell I'd given up on you mate! :D
But kudos for coming back to it. Hopefully you have a better handle on coding and it's becoming a little easier.
Any questions, feel free to ask!
 
I have built several web sites, for now ongoing, well its for my play that is online, for about 20 years now, and I chose never to get up, i just stepped down and went to google blogspot again. Felt weebly was showing it way too many hits per day, blah blah blah. I was somewhat stress feeding the machine all the time, etc. But you can step down and take a look at what the awesome folks can do for you.
 
The issue I'm having is writing code but not know how it works. I mean, I can remember how to write it, but not sure what's actually going on and I hate it.
 
The issue I'm having is writing code but not know how it works. I mean, I can remember how to write it, but not sure what's actually going on and I hate it.
I have the same feeling too.
sometime, we don't know what we can do and what we trying to do. Don't give up, give yourself a goal first(Think of what kind of App u want to build even a simple one can will keep u moving). Then try to update/ enhance the APP, after u learn more. That how I force myself to learn because we may not see how it will benefit now, but maybe some other day it will. I learnt Android from scratch and i don't know JAVA. But am managed to publish my First APP https://play.google.com/store/apps/details?id=syncteq.propertycalculators last months. It's simple, but i think there are lot to enhance. Good luck mate
 
The issue I'm having is writing code but not know how it works. I mean, I can remember how to write it, but not sure what's actually going on and I hate it.
Have you tried debugging your code? Anytime something doesn't work the way you expect it to is a good chance to debug and understand why it doesn't.

Honestly Android is a pretty hard platform to program "cleanly" in. If you're doing networks requests you probably want to use a third party alternative to not do a lot of boilerplate (Retrofit being the most popular), if you're debugging Timber is better than native logging, if you have a database in the app you probably want to use something like Room or Realm. And so on. But it's hard to know of every third party library when you're just getting started. It's safe to say that whenever you want to do something you should spend a few minutes Googling what the best / easiest way to do it is (you will inevitably end up on stackoverflow, which is a good thing :).

If you do make something don't be shy to put it on Github, I'd gladly do a code review and come with some suggestions how to improve, just let me know.
 
Have you tried debugging your code? Anytime something doesn't work the way you expect it to is a good chance to debug and understand why it doesn't.

Honestly Android is a pretty hard platform to program "cleanly" in. If you're doing networks requests you probably want to use a third party alternative to not do a lot of boilerplate (Retrofit being the most popular), if you're debugging Timber is better than native logging, if you have a database in the app you probably want to use something like Room or Realm. And so on. But it's hard to know of every third party library when you're just getting started. It's safe to say that whenever you want to do something you should spend a few minutes Googling what the best / easiest way to do it is (you will inevitably end up on stackoverflow, which is a good thing :).

If you do make something don't be shy to put it on Github, I'd gladly do a code review and come with some suggestions how to improve, just let me know.
Thanks for the advice! I've actually progressed quite a lot. I've create my first proper app. It's a todo list, but it has a nice UI, and can send notifications to remind you of a task. I'm slowly but surely getting there. There's still a lot of thing I'm unsure about. I mean, I even tried to switch to Kotlin. I understand it, but things are different when using it, and I'm just not used to it yet if that makes sense.

I'll definitely put it on Git Hub at some point! That'd really help me out. I'm needing feedback, and things I could change etc.

*Edit*
Also, Realm looks really interesting. I'll have to check that out!
 
Last edited:
Just a screenshot of the To-do list app. Please, give me feedback. If it's ugly, tell me. Explain to me what you don't like/do like. Again, this is my first serious app. I'm not a UI expert. In fact, I suck at it. Just want to see what other people see from their perspective. The app is fully functional. This isn't just the design. It has notification features etc.

I appreciate everyone for giving me advice and being uplifting. Really means a lot.

qBzqnsE.png


I apologize about the size. Not sure why it's so big...
 
That's a dangerous question to ask, because if you asked 10 people to give their opinion on a UI, you'd get 10 different answers.
I actually think your UI is good. My preference is for a clean, minimalist UI, and intuitive to use. I don't like clutter. But I have to say what you've designed looks good to me. Nice work!
 
That's a dangerous question to ask, because if you asked 10 people to give their opinion on a UI, you'd get 10 different answers.
I actually think your UI is good. My preference is for a clean, minimalist UI, and intuitive to use. I don't like clutter. But I have to say what you've designed looks good to me. Nice work!
Thank you very much!
 
Thank you very much!

Wanted to Extend a Hand in Welcome to you,
a fellow student of the art.

have you looked at Python yet?
ask because it applies to android development and it's my personal fav.

Never quit !

Astr4y4L
 
Wanted to Extend a Hand in Welcome to you,
a fellow student of the art.

have you looked at Python yet?
ask because it applies to android development and it's my personal fav.

Never quit !

Astr4y4L
Hey mate! Thanks a lot!

I've used Python in the past. I've created some little GUI applications with it. I've also looked into creating an App before using Kivy. Then, I did a bit of research and found out that if I ever wanted to use things like advertisements, it's not as easy to do so (that's what I've heard. Correct me if I'm wrong). So, I decided to learn Java so I can get the full benefits for android.

Do you use any kind of Python framework? How do you use it in your projects?
 
Edit: Was meant a repl to "What do you mean by "cleanly"? Just interested.", clicked the wrong button.

I mean things like:
  • Everything requires a Context, which makes it very easy to leak memory. Also there are several types of Context with different scope, if you use an Application Context when you're supposed to use an Activity Context you might hold to a reference indefinitely, but it's hard to know because they're both just exposed as Contexts
  • When you start out you usually put too much code in your Activity and mix all sorts of layers which makes it very hard to test your app and it easily becomes very hard to maintain
  • Regarding the above point Google didn't use to do enough, in my opinion, to promote what a good architecture should look like. So there are now multitudes of competing architectures, MVP (done in a number of ways), MVVM, VIPER, clean architecture and so on. If you work as an Android developer you might have to learn them all as the project you're working on changes and so does the tech stack it was built with (in my experience, especially for older projects, none of the above)
  • When you later on start using Fragments you'll run into the very complex lifecycle of Fragments, with weird crashes when the app enters an invalid state. So you need to add all kinds of checks to stop it, which creates noise in your code. A better approach might be to not use Fragments, but how is a new developer supposed to know this?
  • Another problem when you start out is that it's hard to know all the implied knowledge you need to know to create clean code. If you don't know about Retrofit for example you might write your own network logic from scratch, which is sure to be a train wreck. Yet Retrofit is not a Google product so it's understandable if some misses it when they start out and do this

    Just some of the things that came to mind, sorry for the long post.
 
Back
Top Bottom