Skip to main content
6 answers
6
Asked 801 views

i dont know how to start programming ???please helppp

#computer-programming
#computer-science
I'd love to got Android programming but academic projects are with c language Do you think I go looking for my interest and to read Java or c language to read?

+25 Karma if successful
From: You
To: Friend
Subject: Career question for you

6

6 answers


1
Updated
Share a link to this answer
Share a link to this answer

Christopher’s Answer

Hi Elina! I learned Android by simply jumping in and doing it! You will struggle along the way, but this is how you will learn. If you try to learn everything all at once you will become overwhelmed with concepts and things to do, so I suggest you:


  1. Come up with a simple app idea
  2. Sign up with stackoverflow.com
  3. Start coding!


The first few apps I built on Android were very very simple. They were "quote" apps that had famous quotes and you could swipe to through them. Doing something as simple as this will let you learn the basics of Android and coding in Java/Kotlin and then you can build something a little more complicated. You can repeat this over and over until you're able to build something really complicated using everything you've learned over time.


Google has a great getting started guide here:


https://developer.android.com/training/basics/firstapp/


When you get stuck you can search Stack Overflow for existing answers to programming/android questions you may have, and if there isn't an answer you can ask your question there and somebody will help you! :)

Christopher recommends the following next steps:

Think of a very simple app idea to build
Sign up on stackoverflow.com
Start building your first app using Google's android training guide
1
0
Updated
Share a link to this answer
Share a link to this answer

Arun’s Answer

Hi Elina,


Ultimately, the key skill to programming is to be comfortable in whatever language you end up using. Once you've tried a couple of different languages, you'll learn that programming is more like writing. The language you write in is important, but not the most important thing about it. Once you learn a different language, you can generally translate your work easily.


With that said, my advice to you is to build the thing you want to build. If you want to build an Android app, learn Java. You're much more likely to learn and be interested in what you are building if you actually enjoy looking at the end product. Moreover, the skills you pick up in learning Java will help you if and when you have to learn C as well! A lot of concepts and syntax are very similar.


I started programming at a young age because I really wanted to make a game that I could play with my dad. I made this game in BASIC, which was frowned upon in the old days. Had I stopped to take academic courses and learn C, I would have gotten too bored to pursue the more interesting aspects of programming.

Arun recommends the following next steps:

Make a simple clone of an Android app that you like. See (https://github.com/codepath/android_guides/wiki/Sample-Android-Apps)
Take a course on Android development (https://www.udacity.com/course/new-android-fundamentals--ud851)
0
0
Updated
Share a link to this answer
Share a link to this answer

Alex’s Answer

Hi Elina!


Good question. Its always hard to know where to start when doing something new.


When I started out developing, all I wanted to do was make mobile apps. I, like you, was in an academic program that focused on foundations and fundamentals that seemed so far away from the mobile apps in my dreams! My approach is laid out for you below, but here is the gist. I stayed in my program and worked hard to do well. While studying computer science at Berkeley, I sought out an iOS development group led by students. There I got pointed to a number of resources and did some group labs with my fellow students, even developed a real world app that was published! This experience was so fun and allowed me to get some real experience and see the magic of mobile app development. Even though it was a student led course, having this on my resume helped me to land my first job on the mobile team at LinkedIn. So, below is my advice to you on how to get started:


First, I'd say its important to continue to work hard and do your best on your academic projects that are in C. Though C is an old language by todays standards and seems so far away from building cool Android apps, being proficient in C programming will set you up for success in any task you set out to achieve throughout your software career. Just like having a solid foundation is essential when building a skyscraper, its also really important when building your knowledge and skills! My suggestion here is to put your all into your assignments and make sure you take the time to understand the solutions even if you didn't get it right the first time.


Second, get familiar with the Java language. You can definitely do this in addition to your current classes. I recommend checking out this reddit channel and searching for the best Java posts.


https://www.reddit.com/r/learnprogramming


I also highly recommend the resources at https://www.freecodecamp.org which is all about discussing and gather the best free ways to learn how to program in any ecosystem.


Third, there are some great resources to out there to learn how to build Android apps so don't be afraid to dive right in and get started! Look at the reddit channel /r/learnprogramming linked above. Also, Google, which develops and maintains the Android ecosystem, has a number of guides written for all levels. Check some out here!


https://developer.android.com/guide/


It can be helpful to go through these in groups, so find some friends from your class who are interested in Android development as well and start to work through some of them together. When one of you gets stuck its always helpful to check with others working on the same guides.



Alex recommends the following next steps:

Keep focused and do well on your academic projects.
Start learning Java basics through free online resources.
Focus on Android development by going through Googles own guides.
0
0
Updated
Share a link to this answer
Share a link to this answer

Chris’s Answer

Hi,


Java and C have a lot of similarities - when Java was designed, C and C++ were major sources of inspiration. If you're already familiar with C, learning the basics of Java is pretty easy. In a lot of ways, Java is easier - for one thing, Java has "garbage collection", meaning you don't have to worry about manually managing memory!


One of the biggest differences is that Java is an "object-oriented" language, while C is a more "procedural" language. Here's a short video that explains the difference:


https://www.youtube.com/watch?v=OEfSFrk_KEI


Here are a few links that can help you learn the basics of Java. The second link summarizes the key differences between C and Java.


https://www.javatpoint.com/java-tutorial

https://introcs.cs.princeton.edu/java/faq/c2java.html


Here's a great tutorial for building your first Android app. There's actually very little Java involved, and you should be able to follow it if you have C experience:


https://codelabs.developers.google.com/codelabs/build-your-first-android-app/


Best of luck!



Chris recommends the following next steps:

Watch this video to learn about object-oriented languages: https://www.youtube.com/watch?v=OEfSFrk_KEI
Skim through this tutorial, but don't worry about reading every little thing right now. Keep it handy as a reference: https://www.javatpoint.com/java-tutorial
Follow this tutorial to build your first Android application: https://codelabs.developers.google.com/codelabs/build-your-first-android-app/
0
0
Updated
Share a link to this answer
Share a link to this answer

Nikolay’s Answer

Hey there: The programming language is not so important in the long run.


Finding great instructors and buddies to work with is the hardest and most important part early on with programming because it feels so foreign to most people to sit at a computer and look at a screen., whether it's Android or something else. Eventually, it does get really fun, but to stay excited about it in the first weeks and months, you'll be most successful if you can find great teachers and buddies.


Therefore: If you find yourself with better opportunities, for example, teachers or classes, in C or C++ or anything else, go for that first anyway.


Java and Android will always be available, and once you've learned one or two languages, switching between them is a lot easier than it seems at the moment.


Good luck!

Nikolay recommends the following next steps:

Find out what classes you're likely to be taking first. If that's easy to figure out, sure, start working on that language immediately.
If the classes ahead of you are not well defined, look for people that are a bit ahead of you and can teach you a bit of whatever they know -- be it C, C++, Java, Android specifically, or anything else. Try to keep learning that by yourself.
Something else to think about is the relationships with the people you'll meet along the way. Work on maintaining those as well. That's a whole other topic, but bear that in mind and keep seeking advice on this topic as well.
0
0
Updated
Share a link to this answer
Share a link to this answer

Peter’s Answer

Hi Elina,


While you will experience many programming languages throughout the course of a computer science program, most programs will have one or two primary languages they use. I went to a school that primarily taught fundamental concepts in Java. I've heard of others that would primarily use C++.


With that said, it is generally useful to know multiple languages. The computer science program will teach the theory and concepts that will translate to any programming language. The syntax of the code will be different but the definition of a Linked List remains the same no matter what language you're working in. Learning a new programming language can be similar to learning a communication language. Sometimes there is overlap, for example Portuguese and Spanish. This would be akin to learning Kotlin if you know Java or vice versa.


As to Android development, the industry seems to be adopting Kotlin at an increasing rate, now that it has first-party support. You can also see what the adoption is like here: https://pusher.com/state-of-kotlin. It might behoove you to bypass Java altogether and focus on Kotlin in your personal time. I doubt you'd be able to find a school that does their full teaching in Kotlin though. Finding a school that primarily teaches Java may be beneficial as you'd be able to increase the pace of learning what they are trying to teach. It can take some time to translate concepts between language. It may be better to do that later once you grasp the fundamentals.

Peter recommends the following next steps:

Research computer science programs and find out what language they primarily teach in.
Expose yourself to your desired language early! Check out https://kotlinlang.org/docs/reference/ for learning resources. There is a playground at https://play.kotlinlang.org/
Play around with both Java and Kotlin. Build an app in each. Google has many training guides on building apps that have samples in both languages: https://developer.android.com/training/basics/firstapp/
Learn other languages so you can practice translating concepts from one language to another
0