How To Get Ideas For Building Apps & Software?

How To Get Ideas For Building Apps & Software?


Hey, what’s up, John Sonmez from simpleprogrammer.com.
I thought I’d answer this question today about sort of what do you do when you get
stuck, how do you come up with ideas, get to the next level. Sort of a long email, I’m
going to try to summarize some of it, but I’m going to read a lot of it because I
think this is important. This email comes from Paul and he says, “I’ll start with
the basics about myself. I’m currently 14.” That’s pretty cool. “I started programming
about a year and a half ago, somewhat on and off. I started with Java, really just messing
around with it maybe 6 to 12 months ago. I started a project that started off as an obligation
and found the prime factors of a number. I later upgraded the application making—implementing
it into a GUI and throughout my free time I’ve made some more miniscule updates to
it. However, in the program I’m really quite happy with is a custom scoreboard I created.”
I’m going to skip a little ahead here. He goes on to say basically that he’s gone
through these projects and he’s advanced on these. But he says that basically—“Well,
that was longer than I thought it would be. Personally I’m not sure what I should do
next. I’ve really found the hardest part about programming so far is getting an idea.”
This is what I want to hit on here. He says, “At the moment I only know Java well with
basic knowledge of HTML and CSS but I’m planning on learning C++ throughout the year.
I guess the whole point of this was to ask if you have any suggestions in general how
to get ideas or even which ideas to follow through on. Really, this was just a rambling
of a mad man, but hey, if I get something out of that it’s even better. Thanks for
reading, Paul.” So Paul, congratulations, I mean you’re
only 14 you’re already tackling some pretty complex stuff. You’re doing awesome. Don’t
feel like you’re not living up to the level you need to be. You’re way ahead. That doesn’t
mean that you should rest on your laurels either. I’m going to give you some advice
to help move forward. What I didn’t read in your email, because
it is fairly long, what sort of came out was this idea of you’ve gotten so far in your
development and you want to know—you said that the hardest part is coming up with ideas
so you want to know what should you do next, right, so how do you come up with new ideas
in order to make new programs. You did, I think, a scoreboard you said, you did a prime
numbers program, so what do you next? Really—and this is a common problem a lot
of developers run into is you want to separate this idea from coming up with an idea and
practicing. You’ll see this, I’m going to give you a kind of analogy here so you’ll
see this in the art world. Great artists steal. They don’t reinvent the new thing. The reason
why is for a couple of reasons. One reason is because when you copy someone else’s
thing you can practice the techniques aside from the creativity.
There are 2 sides of our brain and in programming we sort of use both of these. One is the creative
side where we come up with the ideas or we come up with new things and one is the technique
side which is more analytical where we’re actually implementing.
If you look at great artists, anyone in that profession a lot of times they’d copy first.
That’s how they learn. I did a video on Van Gogh Museum when I was there and he was
a copier. He copied a lot of art work. I believe Rembrandt did as well. A lot of artists when
they’re developing their skill they’re not coming up with new pieces. They’re copying
the brush strokes, they’re copying the scenes, they’re painting the exact same picture
someone else painted and trying to copy it as much as possible. By doing that they’re
developing their technique. Once they have their technique solid then
they use their creativity and create new things. Sometimes they play back and forth but that’s
what you need to do is when you get stuck in software development, a lot of developers
get to this point. They’ve come up with an idea. You did your prime number thing,
you did some scoreboard thing. What do I do next? I can’t advance my programming unless
I have a new idea. Don’t come up with a new idea, instead, go and copy something.
Find another application, find the next level more difficult thing.
I often tell—I did this video on learning. You can check this here on one of the—How
Do I learn complex topics, programming topics. In that video I said “Well, if you’re
trying to learn JavaScript then copy the g-mail app. Make your own clone of the Google mail
app and write that because you don’t have to come up with the idea. It will simplify
things. Really your next step forward from this point
is to figure out something, what is the next level complicated program? Look for one that’s
already existing and then copy it and see how many applications. When you get to the
point where you can take application that someone’s built and you can copy that and
you can write that code, then you know that your technique is proficient enough that now
you can go and create your own ideas. You don’t want to be bounded by your own creativity
and also it will stall you out in the process. If you’re creating while you’re trying
to develop technique you get confused and you wonder if you’re doing the best thing.
It’s better to just copy at first. Don’t be afraid to steal.
One other thing I’ll give you here on top of that is you can make things better. A lot
of times someone will copy someone else’s idea or program and then they’ll figure
out as they’re doing it ways to make it better and then they develop their own version
of that. Almost everything in the world when you see—there’s very few things that are
new. Everything is usually a copy of something that’s been improved. Really that’s the
skill that you’re going to need anyway. Anyway, congratulations on everything that
you’ve done so far. I hope this helps you. If you’ve got a question for me, email me
at [email protected] If you like this video, subscribe. Take care

43 thoughts to “How To Get Ideas For Building Apps & Software?”

  1. Great video, John. It's funny, I was just about to start typing a comment when you made the point at 5:35 that I was going to: that you can make something better. How many apps have been built over the years that have features that are better than similar apps? By taking an idea and making it better, you're improving both your technical and creative sides and also ending up with something that may be very marketable.

  2. I was in the same position 6 months ago with javascript. I did a free online course that consisted of 10 projects and I have really learned a lot whilst completing them. Because the projects were quite varied it forced me to learn things that were outside of my comfort zone and has really improved my knowledge. It would have been difficult for me to come up a curriculum like that on my own.

  3. Everytime I come up with an awesome idea for a web project, I later find out that the knowledge required for that project is very complicated or hard to learn. Any idea how I can make a project within my boundaries, but still learning new stuff while making it?

  4. Excellent video as usual, sir—but here's a question… By copying an app to sharpen your skills, aren't you losing certain benefits versus starting something new? For example, if I'm copying Slack web app, I haven't seen their past iterations, changed requirements, and complete overhauls prior to their current, refined version. I'd be missing the golden experience of having to make on-the-fly changes to certain parts of the code I thought was already done. So much of real-world development is iterating over the product, due to changes in business requirements. What's a good way to mimic and practice that? Perhaps working on an open source project? If you could reply or make a video discussing that dynamic in more detail, that'd be awesome. Thanks again, loved the video, as always.

  5. I copied like 30 websites, 35 websites, or something, and now i know CSS of my heart. It's funny how long it took me to understand exactly how position relative and absolute work to a perfect degree. Iv asked other programmers, well i told them i finally discovered how to use position relative and absolute to it's fully potential, and some of them said it took them a while to. I mean, I can do anything with CSS, but even though, i never understood that 100%, now i do though. The more sites i build the better i get. The hardest is the start.

    I have the same problem in web dev. What i do is i think about features of the website, and then I make a wireframe of it. I then make a prototype in the text-editor, and then i re-write it checking the code and making sure i did it as best as i could. That helped me tremendously!

    I'v just started my teaching-bloging platform and ill see how that goes. Quite a lot to think about, technical skill and in general. Once i get the front-end, It's like half the battle right, hue hue hue xd i feel like it is.

  6. Actually i´m 14 years old aswell and i ran into the same problem, but this video really helped me making a plan for the future.
    Thanks

  7. I dont know what about him… but everything i do in past year and feel myself i m going in wrong path. Then he come up making me feel like i m in right track..

  8. John what would you do if you wanted to do the multiple apps instead of multiple training courses ? Do you an edge* in apps (; *like poker edge

  9. Hey man,don't take this the wrong way but you should really write scripts for your videos cause if you dont you'll end up sounding like you have a speech problem (just like in this video) and its annoying!

  10. Well that was a brave move telling people to copy ideas… most of us do copy ideas but no one says it out loud… anyway thanks for the motivation to look at others work and learn…

  11. Im not sure if i should have pm'ed or what but, i started programming when i was 13 and im 17 now, i know Java fairly well, some css, javascript and html pretty well. I absolutely love this video but the problem i running into is the step after coping, i want to make my own idea but i dont have any :.(

  12. Yes, this video is great and actually is helping me out…! I'm 30 though and started fiddeling with code around a year ago. Currently looking into C#.NET and I like it 🙂
    I recently built an IRC channel management BOT and now I am out of ideas aswell, besides from upgrading the BOT every now and then.

    Thanks for the video!

  13. Dear John, my name is Darius, I'm almost 23 and I have an undergrad in Bus Management, after going into my International MBA abroad I finally came to the full realisation that this is mostly bullshit. I have come home and seen first hand the stagnant economy and horrible job market for bus majors (high supply/low demand). For the last two years I developed a yearning to learn programming but due to the variety of languages I never just picked one and got started. Do you have advice on coding boot camps for some one with no software exp at all, I have grand ideas for a startup but I require software skills to build my prototype, let alone find a job in this shitty economy.

  14. great artists steal …………………..big like , very true
    they steal but in a perfect way and smart way and from multiple resource

  15. Nice advice, John. This is a principle of Free Software. Study, copy and change a program is vital for learning and understanding.
    Greetings!

  16. Yes It is true.. !! it helps a lot when we are learning new technologies. It speed up our knowledge in the same and save our a lot of time to figure out the things. Thanks for the good suggestion. 🙂

  17. Thank You for this Video is 4 am and i was Frustrated For Buiding new apps Now i think to make a raplica of diffrent apps

  18. You, sir, are a smart and practical man. I'm dumb enough to never have thought about programming this way.

  19. find a company that makes good money in your area online. See what they do, and do it better 🙂 Boom good new idea for a project!

  20. Thank you! I have been stuck in that creativity rut for like 6 months! I will go copy other peoples projects and add on to it now.

Leave a Reply

Your email address will not be published. Required fields are marked *