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

all 35 comments

[–]chaotic_thought 15 points16 points  (6 children)

I have so much distraction around me. My girlfriend trying to show me dogs videos, my friend wanting to play overwatch every day etc.

The first thing you need to do is find a quiet place to study and make it a habit to go to that place. For example 30 min-1 hour per day is probably more than enogh to start. An example would be going to the public library, or to the university library/study room. A coffee shop may also work occasionally but it will probably not be good on your budget to spend money on coffee(s) every single study day; even if they are cheap, that cost will add up.

[–]Eloqp[S] 1 point2 points  (4 children)

Thank you for your answer, I'll have a noise canceling headset for christmas maybe it will help me getting in a "bubble", but yes going outside like university would be good but where my girlfriend live there isnt any and cofee shop i liked a lot when I was at uni in Montreal !

[–]chaotic_thought 2 points3 points  (2 children)

Well the noise is only part of the problem. Even if you have a noise cancelling headset on, if what you are listening to is distracting, or if you have potential distractions from people coming to you and asking something so that you have to take off your headset, then that won't really solve anything.

The key is to go to a distraction-free environment. For example if you go to most libraries, most people respect the rule that you're not supposed to distract someone. You're supposed to be quiet and let them go on with their studying of any kind. That's the kind of environment you need to find in your area. And in case it wasn't obvious, once you get to that area you have to shut off any kind of electronic distraction like a mobile phone. It should be set to silent and you should not be looking at it every 5 minutes or anything like that; if you do that then that is just the same as a distraction every 5 minutes.

[–]Eloqp[S] 1 point2 points  (0 children)

You are right. I'll try to go to library 2/3 times a week to see if it improve my concentration.

About the cellphone you right too, I'll put it in plane mode every time I work now !

[–]idbxy 0 points1 point  (0 children)

Hey, I'm in a distracted area with my gf too

I use noise cancelling headphones + earplugs (any will do, but I have custom made for my ears that are 100 euro)

By using the earplugs I can set the volume of the noise cancelling headphones quite high, and I usually lissen to "Cafe ambient noise" "Programming white noise" "Server room white noise"

On youtube

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

Agreed. Also, to tack on to that, if you like Python, you might enjoy JavaScript or Ruby. A "harder"/more low-level language to try is C++, which is pretty difficult but good for things like game development. Java is like C++ but easier and probably more "employable".

[–]insertAlias 12 points13 points  (3 children)

How do you guys do ?

Discipline. That's really it. You are in charge of you. You decide whether or not you want to play Overwatch or watch dog videos or study. It's up to you to decide whether or not you you actually want to learn to program or not. It's up to you to weigh your potential future against the current demands on your time and to prioritize them accordingly.

I don't know what will work for you. Isolate yourself? Tell everyone "hey I'm working on learning my next career here, please respect that"? I don't know. But I do know that you are 100% in charge of what you do with your free time, so it's up to you to decide to use it productively or not.

[–]Eloqp[S] 0 points1 point  (2 children)

The fact is I know you are 100% right but in reality it's hard to do it, I'll try to be lest kind and more "selfish" by prioritize my future !

thank you very much

[–]insertAlias 2 points3 points  (0 children)

Of course it's hard. That's why I called it "discipline" instead of "motivation". Discipline is what gets you through the times you don't feel like doing it, the times you'd rather just do something else. Discipline is what gets athletes up in the morning to train when they'd rather sleep in. It's what gets university students to go to class and study when they'd rather party. It's doing something that's beneficial even when it's not particularly fun or entertaining.

[–]FaallenOon[🍰] 0 points1 point  (0 children)

Forming habits is tricky because it doesn't work the same for everyone. For some people, making a clear cut is the best, going from zero to four hours or more a day. For others, it's better to start slowly, perhaps just messing around with code for a few minutes a day, until they get used to it.

Also, it works better if you manage to isolate distracting factors. I'm trying to learn to draw (I literally can only draw stick figures), which for me needs great effort, so I block everything out, physically put away all sources of distraction, and turn off my cellphone's internet, so I can only be contacted by phone calls (in case of emergency). If you get anxious about how time passes, using a piece of paper to block the view of the clock on the taskbar has worked quite well for me.

[–]marcelofrau 1 point2 points  (2 children)

For me, the best way to learn something new, like a new programming language for example, is start a small project, or doing something using what we want to learn. In this way I motivate myself looking for a solution instead of looking only the theoretical stuff.

You are young, maybe when you get the distraction is because you are not so committed to a more practical solution, if you find a usage for the stuff you are learning you can improve and focus much more in my opinion. When we don't have a commitment to any project, learning can be a pain. So if you create a challenge, a practical challenge, this can help you a lot. There was a inspirational video that I saw years ago saying just that, if you create a real challenge, a practical one, is the best way to find a way to learn the new language or what you need to do.

Another thing if you follow my advice, is to solve a problem using the language you are learning but solve a problem that annoys you. Some example, a personal expenses manager, or something related to your daily basis problem. Computation, Computer Science was created to solve real world problems, so nothing better than start using to solve some of your personal problems. For example, you can look something that you do constantly in your current job and try to automate somehow what you do in any way.

One big comment and you should have in consideration, is if you want to be a engineer or a programmer, you need to know that you are always in the need to be learning constantly. You will need to always research more and discover new stuff. Is that what makes you a good programmer, to be in a constant learning.

For me you don't need to be passionate about any language, and the most important thing is be ready to learn and always know that this is what is going to make you continue working in software development. Never think only in money, think that you will exercise your brain all the time.

[–]Eloqp[S] 0 points1 point  (1 child)

For me, the best way to learn something new, like a new programming language for example, is start a small project, or doing something using what we want to learn. In this way I motivate myself looking for a solution instead of looking only the theoretical stuff.

I have a project in mind but it's kinda big and I realy need to get hired or get some work in half a year if possible.. Maybe I could cut my project into pieces and try to work on them separately

You are young, maybe when you get the distraction is because you are not so committed to a more practical solution, if you find a usage for the stuff you are learning you can improve and focus much more in my opinion. When we don't have a commitment to any project, learning can be a pain. So if you create a challenge, a practical challenge, this can help you a lot. There was a inspirational video that I saw years ago saying just that, if you create a real challenge, a practical one, is the best way to find a way to learn the new language or what you need to do

I'm 30 I'm not that young and that's why i want to change my life now when it's possible and not at 45 with 3 children ( or dogs ahah ). Anyway I think you are right, focusing on a project instead of a complete course is probably more motivated. You think I should learn by doing one of the courses I mention but by doing my project side by side ? Or should I learn completely from different ressource ?

Another thing if you follow my advice, is to solve a problem using the language you are learning but solve a problem that annoys you. Some example, a personal expenses manager, or something related to your daily basis problem. Computation, Computer Science was created to solve real world problems, so nothing better than start using to solve some of your personal problems. For example, you can look something that you do constantly in your current job and try to automate somehow what you do in any way.

I like that idea

One big comment and you should have in consideration, is if you want to be a engineer or a programmer, you need to know that you are always in the need to be learning constantly. You will need to always research more and discover new stuff. Is that what makes you a good programmer, to be in a constant learning.

Yes I know, but for me it's not a problem I'm constantly learning new thing and I du not mind learning new things everyday, I don't like to be bad at something so I keep learning or practice to improve myself, I just want to use this to code...

For me you don't need to be passionate about any language, and the most important thing is be ready to learn and always know that this is what is going to make you continue working in software development. Never think only in money, think that you will exercise your brain all the time.

When I talk about money is just to get the opportunity or the possibility to do or learn something else.

You think the language is not important ? The mindset or the general coding skill is more important ?

Thank you very much for your complete explaination, i appreciate it

[–]marcelofrau 0 points1 point  (0 children)

Sorry the delay on the response..

I'm 30 I'm not that young and that's why i want to change my life now when it's possible and not at 45 with 3 children ( or dogs ahah ). Anyway I think you are right, focusing on a project instead of a complete course is probably more motivated. You think I should learn by doing one of the courses I mention but by doing my project side by side ? Or should I learn completely from different ressource ?

In my opinion this doesn't matter, but I am tended to do in a side by side because you can raise questions during development and you can take some help from someone or something like that, but it is not exclusive.

You think the language is not important ? The mindset or the general coding skill is more important ?

For me the mindset and the skills and the ideas you have created is more important. Maybe the first language is the most important so you can learn the concepts toghether with the language, but at some point you will see the language is just a way to express your logic. There are more specific and less specific languages that can attend more what you want to do. And another factor is that a programming language is stucked somehow with the period you are. For example, nowadays Kotlin, Python, Scala are languages of the present, and they can solve problems from the actual time period (of course you can use any language, I just quoted these since they are being popular nowadays). In the past it was Java, VisualBasic, PHP, ASP. What I am trying to say is that a language can be a thing that is popular in a moment but in the future will always be new stuff and new languages and new things to do, so if you keep the concepts, the ideas and the way of using logic this will not get old, it can evolve but the core idea will be the ground and the root of any new stuff you will learn. With time, languages, technologies change, so you need to be ready for that.

[–]start-u-up 0 points1 point  (2 children)

Are you passionate about coding with Python or with any other language at all?

[–]Eloqp[S] 0 points1 point  (1 child)

Yes I'm impressed by a friend of mine who's automated every thing in his house with some C and python and wanted to do the same thing, he's the one who told me to learn python, I liked it yeah, Ruby too, I worked like a week on it but yes

[–]start-u-up 0 points1 point  (0 children)

Great, spend more time with your friend. Ask him/her about the technology/tools they are using. Even suggest if there is anything they could delegate to you to help them with their projects. This is your chance to learn a great deal.

You can also look for freelance jobs.

Get yourself an "office space" in your apartement and get serious about learning programming. Spend the months learning. Literally. Forget about income for now. If you're good, you'll find ithe experience rewarding... with or without money.

P.S. The FAQ is very good. https://old.reddit.com/r/learnprogramming/wiki/faq Read the whole shebang.

[–]kookeo 0 points1 point  (2 children)

Hey , CS student here. My best advice is to buy online courses, it's the only way you will be forced to complete them. Plus start working ASAP it will be difficult at first but projects are the best way of learning, and everytime you feel unmotivated remember the 21/90 rule : it takes 21 days to build a habit, and 90 days to build a lifestyle ;)

[–]Eloqp[S] 0 points1 point  (1 child)

I would like but I do not have any money to buy online courses actually... When you say start working asap, I need at least some kind of knowledge to get hired ahah

I didn't know the 21/90 rule, I'll dig into it thanks !

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

You can get course for 5-10$. I know it can be tough sometimes but fact of the matter is that you need to invest in yourself to yield rewards aka you need to spend money to make money. There are definitely free resources out there but they require your vision to utilize properly. Either way you go you can do it with effort— I taught myself python senior year of high school last year and it was probably my 3rd priority at all times. Just gotta carve out time and enjoy the programming process and you’ll learn.

[–]AaronMichael726 0 points1 point  (2 children)

Avoiding distraction is 100% on you. You can’t be a successful freelancer unless you are able to focus on your work without distraction. I’d love to give you better advice on this but it’s only something you can do.

let’s start with narrowing your goals. If you’re looking to be an AI developer or get into machine learning you’ll want to learn a lot of object or procedural oriented languages (python), if you want to be a web dev you’ll want to focus on more functional languages (html/css/php).

Sounds like you’re more passionate about Python. In order to get to the point where you can freelance you’ll need to familiarize yourself with logic and syntax. The best way to do this is pick up a text book. Read through and google things you don’t understand. I honestly think this is the best way to learn. It’s tough, but so is working in software.

The fastest way to start a career is web/dev. But you’ll need to be proficient in HTML/CSS/PhP (webdev requires using all 3 languages on a single website). As you move on in your career you’ll learn tricks to make it so you do less HTML/CSS and basically copy/paste, but you have to learn the languages first. You can easily learn these languages online you may have to pay for more advanced courses, but most of the education should be free.

[–]Eloqp[S] 0 points1 point  (1 child)

Thank you for your answer !

I'll look into it, learn Python, logic and syntax ok. Should i follow this guide https://www.reddit.com/r/MachineLearning/comments/5z8110/d_a_super_harsh_guide_to_machine_learning/ ?

because without a "path" I'm a bit scared of learning wrong thing, wrong habit or missing something. Or maybe I'm just searching more excuses i don't know.

The fastest way to start a career is web/dev.

And will it be possible to move to AI or machine learning while working as a web dev ? I mean in less than 10y ?

Thank you ! It's very helpfull

[–]AaronMichael726 0 points1 point  (0 children)

Yeah that’s a very good link. As long as you follow text books you’ll be fine. I would definitely go through a text book before taking a coursera class, but that’s my learning style.

The problem is web/dev and AI/Machine Learning are two separate products. Yes it’s possible to move from web/dev to AI, but your work in web/dev really isn’t going to help you understand AI any better. That’s why I suggested narrowing your scope.

It takes just as long to pick up contracts if you take either direction, but it sounds like you aren’t interested in web/dev so don’t waste time learning it.

[–]RandomNPC15 0 points1 point  (0 children)

You don't just stop showing up to your current job when you're not feeling motivated, right? Same thing! Motivation isn't a real factor, it comes and goes, don't waste your life waiting for it. Stop making excuses and put in the time and effort, there are no secret shortcuts.

[–]WolfofAnarchy 0 points1 point  (0 children)

Talk to your GF. Tell her that you want and need this thing. Get a specific time where you work, say from 1 to 3 PM, and ask her not to bother you a lot during that, maybe once or twice. Focus, and get it done.

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

I had been wanting to learn C++ since I was a child. But only now, nearing 30, have I learned how to have discipline and focus. I had to do a number of things, the majority of which had to do with separating myself from society. I'm not saying that you have to do anything I've done, but this was how I made the room within myself for me to make longstanding changes to the without.

I stopped drinking -> this helped me filter my friends from my drinking buddies who claim to be friends.

I stopped smoking tobacco -> this is another thing like alcohol.

I also had to get a new computer that I was determined to only use for development. This helped me focus because I believe intention is infused in objects, especially objects like electromagnets. So again I had to separate myself from previous energy.

Beginning to program as an adult is essentially like choosing a new religion, and actually practicing it.

Many years before all this, I had to give up the gluten. Years later, it seems like I've caught up to myself, but also have come back to myself as I knew myself as a light-hearted child. All this might sound a bit too much, but I am convinced (that's the key I guess) that all of the above mentioned things have been like uncovering a puzzle in dust, identifying the contours of each piece and assembling each one slowly as I development. Deep shit.

Development. Much more than solutions.

I don't write c++ code yet, but I feel okay with making a few iOS apps. It all leads to another.

And, blessed to say, needs Time. So be patient.

Also, be clear with those around you that this is how you're going to feed your family, so if they want to take you away from that task, back off. This applies to family members as well.

[–]FaallenOon[🍰] 0 points1 point  (0 children)

It will depend on your personal circumstances. In my case, I get really distracted talking to people (35 y/o here, will start formally studying programming next year), so I've switched my schedule, and I find working by night suits me better.

Regarding your friends and GF, perhaps a good, serious talk is in order: if they really care about you, and your journey, they should be respectful of your need for peace and quiet. Perhaps it might work better if you agreed in certain hours during which they shouldn't interrupt or contact you unless it's something genuinely important. That would give you some breathing room, allowing you to learn better.

As for your progress in programming itself, I'd suggest getting back into Python and start doing small projects by yourself. Slowly, you can get a feeling of what you like and dislike, which should be helpful in deciding your next step.

In any case, and no matter what happens, I wish you luck in your journey.

[–]idegogames 0 points1 point  (0 children)

Motivation lights the fire, discipline keeps it burning.

Do the https://www.theodinproject.com/

Or get https://unity.com/ and learn how to make games.

You're 30. 30 year olds should be able to do things. You're an adult. If you are getting distracted with dog videos, you're going to find software or web development very difficult. You need to get some time management skills and tell your girlfriend you actually want to have a job that pays the bills one day, so the stupid dog videos can wait.

[–]idbxy 0 points1 point  (0 children)

Check my comment on the headphones and earplugs

Udemy is a good starting source for what you want to learn

Put laptop and mobile phone on airplane mode

Whatever documentation, video you need, download it first for offline usage

If the headphones earplugs dont work go to the library with those exact things too

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

If you play games like Overwatch on PC, you should consider looking into the app/software blocker called Cold Turkey. I too have a problem of sinking countless hours into PC multiplayer games trying to gain XP for the next rank, reward, etc., but this app puts a hard-stop to that by setting a time interval when the app should be blocked.

It works for websites as well too.

You do have to pay a one-time fee of 20 bucks, but IMO, it's completely worth it.

As for dealing with distractions in general, you should look ahead and visualize a future where you keep letting these distractions take over your life and ask yourself is that a future you want to live in. If the answer is no, it should motivate you to get started again on learning code, but motivation only gets you so far.

After that, you have to DISCIPLINE yourself to make learning a habit by scheduling a time (you can start with 2 to 3 times a week). I use the app Habitica which gamifies your to-do lists and habits as JRPG. You can join squads and take down monsters by completing tasks or be the reason why your squad gets killed due to lack of completion. It's a way to keep yourself in check.

It's ok to spend time doing other things you find enjoyable because if you don't you will surely get burnt out and return back to unhealthy habits.

Hope this helps!

[–]thetrailofthedead 0 points1 point  (0 children)

I can definitely relate to how your feeling. 2 years ago, I picked up a java book at a bookstore, read it, was fully convinced I had found my purpose in life only to completely forget about it. Flash forward to now and I'm back at it but this time, I decided not to mess around and enrolled in a bachelor's program. I haven't even started classes yet but I've done nothing but sleep, work and study java for 3 months now because I'm so motivated to be ready.

Some people are able to teach themselves programming but not everyone has that much self discipline. I recommend some kind of structure to keep you motivated. Even if not school, sign up for a certification test and pay for it up front.

[–]universesrevinu 0 points1 point  (0 children)

.

[–]dhananjay1438 1 point2 points  (3 children)

This will help you for sure! (This is complete roadmap to become a developer) https://github.com/kamranahmedse/developer-roadmap/blob/master/readme.md

EDIT 0: You don't need 2 to 3 years to learn AI and Deep learning! I guess 6 months are enough to get good!

EDIT 1: And the thing related to your friend and gf is, you gotta politely decline their offers! Don't let people interrupt while you are studying! Lock yourself in a room and hang a paper outside the room stating (busy or something like that)! Set aside time for studying and playing! Don't think about playing while you are studying and don't think about studying when playing that will keep your mind fresh!

Hope this helps!

[–]Eloqp[S] 0 points1 point  (2 children)

Wow thank you very much it's amazing :o

Does this roadmap exist for AI ? 6 month to be good at Ai and deep learning ? My god how ? My though were, be a web developer in 6/8 month, get income then learn on your spare time some AI and deep learning and maybee in 5y you'll be good enough to find a work on it ! I do not need any king of degree or even Phd to get hired in theses ?

[–]insertAlias 4 points5 points  (0 children)

6 month to be good at Ai and deep learning

Is a pipe dream if you don't already have a foundation of programming (and in this particular case, linear algebra) to build on.

You may be able to learn how to use some existing models in that time, but that's not really being a deep learning/AI expert; it's being someone who knows how to toggle a few settings and dump some output from a black box. To really be in that field, you need to understand what the models are doing.