What is the best way to learn how to use a new computer coding app?
There are so many different applications out there and some are really hard to learn, any tips?
In my experience, the best way to learn any new app is to dive in and use it. Come up with a problem/use case that you want to solve with it and then just get your hands dirty. Find online forums, help docs, etc to help you along the way.
Hi Hanan - thanks for your question; this is a question many people have when starting out. Don't feel pressure to learn every application. That's impossible! I am a senior software engineer and even I feel like there are so many new technologies coming out all the time! So, I do my best and pick areas that interest me, or tools that would fit well for my employer's situation. I think the best approach is to 1) pick a small challenge you want to solve (making a "Hello World" web app that does something simple, solving a math problem from your classes, or maybe a small trivia game), 2) pick a language (Python and Ruby are great choices), and then 3) find a popular editor and gradually learn to use it as you solve your problem. These days people love VS Code and Atom; Sublime Text is also good. You may want to wait on using bigger, more powerful (but more complex!) ones called IDEs (these are basically an editor AND other tools like a debugger for finding bugs) like IntelliJ or Visual Studio at first. Then, every time you need to do something in your editor -- like find text, or open a project folder or maybe push your code changes up to GitHub -- you can explore the tool and try to accomplish that task by poking around (just experiment!). And if you get stuck, there's lots of free resources like YouTube how-to videos. I hope this helps! And remember, the most important thing is to have fun and learn as you go; don't stress out about trying to be an expert right away, that will come with time and practice.
It is always a hard thing to know where to start. I learned to program in C++ in school, but my first job was in Java and now I work on a project coding in Ruby.
What is most important are the concepts that are universal for programming. It'll be a little slow at first, but don't give up. :)
I would recommend using either Ruby or Java as starting languages. These two are fairly different but are freely available, well documented and you can find a lot lots of tutorials. How do you spot a good tutorial? It will define an application that you will create and to which you will add to with each new lesson and as your skills increase..
Jose recommends the following next steps:
I'm glad you asked this since I as a professional software developer do think its an important part of my work to choose wisely the tool I use to help me with my daily work.
Depending on what kind of work you need to be done most probably you will feel the need to switch tools at any point soon, that happened to me a few times already during my career and to do that what I found more useful was to talk to people that use the Application I would like to learn. To do that I usually looked for colleagues that used that application and that had some time to help me out and tell me in advance what I can expect from the application. There is also so many communities that can be found online for each IDE that you could get online and chat with them. To give you an example if you like VSCode and would like to know more about it you could visit https://gitter.im/Microsoft/vscode chat and talk with other professionals that could answer to your questions.
Apart from that try out and explore, write code it's an amazing way to get to know the tool.
The tech landscape can be overwhelming at times. I'd echo Marilyn's suggestion of just diving right in. You will get comfortable with the basics and you can grow into more complex features as you gain more experience.
One other thing to keep in mind is that you don't need to be an expert in everything. If you gain proficiency in a single language most of those skills will be transferrable to a new language or tool with way less effort than you expended learning the original language.
Please keep at it. Even experienced software developers feel overloaded by all the choices. Recently my team took over maintenance of an application written in Golang. None of the engineers on my team had ever written Golang. We took one week for personal learning and then came together as a team to develop a sample application to exercise our learnings.
Learning to focus in on a single goal and accomplishing it will be fulfilling and also help mitigate some of that overload feeling.
Ron recommends the following next steps:
This is a really great question, and by asking this question, I think you are showing the right attitude to learn.
One of the best ways to become familiar with a new application or coding technology is to perform small experiments for things you might like to do. A lot of us who work in technology (myself included) have gotten started learning applications and programming this way. By using your curiosity and asking "What would happen if I did this?", you can discover a lot about how something works.
When I first started in technology and programming, I would often just click on everything I could or change the words and text for things to see what it did. I would also do it many times in different ways and see how it changed what happened. For me, this really helped me better understand how computers worked and how to get started with making my own.
Depending on the specific thing you want to learn more about, you could search for that technology online, and try to find some examples of how others have used it or a tutorial that teaches you how to get started and experiment from there.
For example, if it's an application, you could find a tutorial describing what that application is generally used for, and then try to set it up yourself. Once you have a working application or project, you can change small pieces to see how that changes what the application does.
As another example, if you are trying to learn how to code, you might find a small tutorial that shows you how to print some text or draw pictures to your computer screen. You can use tutorials and documentation provided for that code language to then make small changes and see how that changes your program.
The common method here is to find something to try out, and then try things out from there.
Here's an example of a tutorial that could get you started by having you make a few things, and also teach a few things for you to then experiment on your own as well:
And that's just one possibility! You can find all kinds of resources like this for the specific thing you want to learn about, and you can keep learning by using your curiosity.
When you say computer coding app I believe you are referring to an IDE i.e. integrated development environment where you write code, for example Eclipse, Sublime, Xcode or Visual code. If yes, then here's what I look for when I select a coding app
- Does it auto correct or auto populate function names, variable names etc.
- If it shows what line I have made an error at without me running code
- Does it allow me to download and integrate plugins like auto format, wrap etc.
- Does it allow me to run and debug application from within IDE
Personally, I haven't felt like I've actually 'learned' a language until I've used it (sometimes several times). Ideally, if you have a project/problem to solve, it's a great opportunity to learn a new language. If you don't have a project, it's not the end of the world. Searching for '<language/framework/toolkit> tutorial' will often get you started on the basics - many times for free to varying degrees. I also like to supplement hands-on work with a little bit of studying - either by way of (physical) books or online references. One word of advice - don't give up if you struggle with a new language, we all learn at different paces and in different ways. You may have to try several different approaches or use a language several times before you begin to commit it to memory.
If you are just getting started code, I would recommend looking for easy tutorials using online tools. There are some out there where you can simply modify code in the browser and see different output. This can be great for initial learning with the tooling mostly getting out of the way.
As you get more familiar, branching out to solving real problems and then adopting a more complicated tool can be useful. A text editor is usually a lower barrier than a full IDE to start.
For deeper tool learning, while familiar with a particular language...
Learnings styles vary but what works best for me is writing a non-trivial application and learning how to do expected actions or slowly finding ways to make what I'm doing more efficient. A part of that is looking at existing docs and tutorials that exist for an app.
For example, when I switched to doing Node.js development, I took on learning VS Code. When it came time when it would be useful to learn how to debug, I looked up documentation and tutorials and then experimented with how to debug with different test frameworks like Mocha or Tap. Then I slowly started learning different refactor actions, such as F2 to rename a variable across usages.
For me, simply time solving real problems is key.
Best of luck on your learning!