No laptop, no support, but I want to build a coding career — where should I focus? (Beginner, broke, confused)
Posted by Ill_Help_7132@reddit | learnprogramming | View on Reddit | 44 comments
Hey everyone,
I’m a 20F beginner coder from India, currently in a really toxic home environment. I don’t have a laptop (taken away by family), no financial support, and I’m learning everything from my phone.
But I refuse to give up on my dream of becoming a self-made developer in AI/ML or Web Dev. I just don’t know where to focus. I get too many opinions and it’s confusing:
One person says: do DSA in C++
Another says: go for Python + Data Science
Someone else: focus on JavaScript + React
Another suggested cloud computing (Azure/GCP)
And I’m just sitting here, with zero setup, trying to learn something meaningful every day on my phone, wondering: What should my main learning path be? What’s realistic for me to do without a laptop, and what can actually land me remote gigs, internships, or make me scholarship-ready?
I want to be independent, move abroad someday, and build a real tech career — but right now, I just want clarity.
👉 Where should a broke, determined beginner start with only a phone? 👉 Which path (web dev, data science, DSA, cloud) is most doable and rewarding long-term?
Appreciate any help. I’ll hustle my way up — just need direction.
Thanks in advance 🙏
Ad_Haunting@reddit
They are all good career paths. Just lean a little on each topic and see what you like the most and go with it. Though in any of these fields youll need a computer pretty quickly. if possible try to get one, it doesnt have to be good, even a second hand old one should be enough to get started.
Ill_Help_7132@reddit (OP)
I'm trying on my end, but family not being supportive is a big hurdle ,but I'll get one soon. Till then I'm trying to start DSA atleast on my own.
xDannyS_@reddit
I personally think starting with DSA without having basic understanding of how to write code is a terrible idea. You will not understand any of it very well.
Ad_Haunting@reddit
Good idea, you can definitely do dsa with pen and paper
xDannyS_@reddit
I think your first focus should be on getting a PC. You're not going to really make much progress with just a phone. I mean sure you can make some, but not a lot and not very efficiently either. After that I would also recommend CS50 and then odin project if you want to get into web development.
Little_Bid_1856@reddit
I'm 19F would be great if we'll do it together.. Cuz I have same situation still figuring out something
Constant-Statement12@reddit
I'm also 19F with same situation can I join too
Little_Bid_1856@reddit
Sure you can dm me
Squirrel_Factory@reddit
"Coddy.tech"
Long-Account1502@reddit
What you can do is gather information, you dont seem like you have a specific goal in mind. Go out there, gather information and insight about the different paths and find out what fits you. We cant tell you what to do since not even you seem to know what interests you the most.
Ill_Help_7132@reddit (OP)
Thanks, that makes sense.🙏 You're right — I don’t have a clear goal yet, and I’m trying to figure it out. That’s why I posted — I don’t even know what to search or explore first. There's so much advice (DSA, Python, Web Dev, Cloud, etc.), and it’s all confusing when you're just starting with no resources.
If you or anyone has suggestions on what's best to explore first, especially when learning from just a phone — that would help a lot. Thanks again for replying ✨
LoquaciousLamp@reddit
This might be useful to help lay things out for you: https://roadmap.sh/
allium-dev@reddit
Since you say want to build a career, go on local job boards and find 10-20 jobs that would be dream jobs for you. Then pick out the 1-2 technologies that are most commonly listed in their requirements and start there.
Also, it actually matters less than you think right now if you choose python, C++, or javascript (or any other language). What matters is that you spend enough time with one technology to become proficient.
Ill_Help_7132@reddit (OP)
That's a great piece of advice I'm gonna flw that. Thank you.
polarcat_@reddit
Check out OSSU
Brilhasti@reddit
I watched khan academy and edX videos on my phone while on the train. I did the homework when I got home
Your_nightmare__@reddit
I don't know and i have not studied (due to time constraints) but here are some free sources i was planning to use and are supposedly bery good: -the odin project (learn to be a fullstack developer) -CS50 (harvard, gives free certification at the end if you pass the test) (its more in depth than the odin project but it dips your toes in CS) -OSSU university (curriculum is on github teaches CS straight up)
Both the odin project and OSSU have a discord server where you can ask other learners or moderators.
Individual_StormBrkr@reddit
Is college don't have computer lab?
Gnaxe@reddit
AI might take the entry level programming jobs before you're ready to start earning. You might be better off learning trades instead, because you'll start earning bigger, sooner, and AI won't take the jobs away before we get robots. (Probably getting downvoted because of which sub this is. They're in denial.)
If you're sure you want to pursue coding, on an Android phone you can sideload Termux (store version is crippled) and install Emacs or even a limited graphical environment inside that, which makes it kind of like a Linux desktop. You can even try a proot Linux for more packages, but compatibility with Android is hit-or-miss. I was able to get desktop Firefox nightly working, but I have a fairly high-end phone. It's better if you can plug in a keyboard (or use a Bluetooth one). A touchscreen will slow you down. Best would be to plug in a monitor or cast to a TV. You might need an adapter. Make sure your phone is compatible first. A USB-C port doesn't guarantee it can do HDMI, even if the adapter fits. But any Android phone should be able to use a Bluetooth keyboard.
If you need access to a real desktop operating system, you can rent one in the cloud. Use a remote desktop app on your phone. This isn't for free, but there are cheaper options than Amazon, and it will cost less than a laptop, at least at first. Being able to set one up also looks good on a resume.
There's plenty of free learning material online. There's plenty of demand for JavaScript, but you'll have lots of competition as well. Getting your foot in the door and getting some work experience is more important that pursuing the highest pay at first. If you can volunteer, work an internship, or contribute to open-source projects, that can help you land your first paid job. It gets easier from there.
I'll recommend against C++. It's a difficult language, and you need a solid decade to master it. You don't have that kind of time.
Python is the easiest to learn and has the most flexibility. If you decide the data science route is not for you, you can still do back-end web with it instead. I'll recommend that.
JavaScript is not an unreasonable choice, but it's mostly for web, so that's the kind of job you'll be stuck with. It's also kind of a bad language, but I'd still recommend it over C++.
mehkindasadtbh@reddit
Git gud???
rustyseapants@reddit
This is a really simple concept, /r/learnprogramming helps those who like to learn to program.
You need to go here r/lifeadvice or /r/careerguidance
Little_Bid_1856@reddit
I have literally the same situation still learning web development from youtube and trying make my career in coding...
husayd@reddit
If you are on android you can use termux app for development. It gives you a linux environment. Some features or softwares are missing but you probably wont need them at the beginning or maybe ever(?). And if you need, they are probably available with chroot-distros on termux (Uses more resources though. So you can just stay in natural termux environment)
TheSodesa@reddit
More specifically, try this one: https://programming-25.mooc.fi/. You can program on your phone by downloading Twrmux and installing nano and Python interpreter into it: https://wiki.termux.com/wiki/Python.
tobias_k_42@reddit
Have you got access to a library or something else with a PC which has internet access? You could use cloud IDEs. Passive learning will get you nowhere.
Also using a good book is one of the best ways to learn.
Smartphone IDEs also exist, but those should really be the absolute last resort.
You should also buy a notebook. If even that's too expensive buy a writing pad.
For example your workflow could be: Read book -> Write down notes/code by pen and paper into your notebook/writing pad -> Type it into an online or smartphone IDE and execute it.
Preferably use a desktop pc or laptop.
When it comes to books there's also a lot of free stuff online.
TheSodesa@reddit
Join the course Helsinki MOOC if you can afford it, and do the programming exercises on your phone with Termux + nano or Vim.
WillAdams@reddit
Folks used to do computer science by just working up data structures and algorithms on paper and working through them step-by-step.
A classic text/course is: https://levjj.github.io/thinkcspy/ (also available as a PDF: https://www.greenteapress.com/thinkpython/thinkCSpy/thinkCSpy.pdf ) which will help with Python and some fundamentals.
I've been watching MIT OCW and some notable courses which you may find of interest are:
https://www.ocw.mit.edu/courses/6-100l-introduction-to-cs-and-programming-using-python-fall-2022/video_galleries/lecture-videos/
https://ocw.mit.edu/courses/14-310x-data-analysis-for-social-scientists-spring-2023/
https://ocw.mit.edu/courses/6-042j-mathematics-for-computer-science-fall-2010/video_galleries/video-lectures/
There is also one on video games, but it's quite old:
https://ocw.mit.edu/courses/6-001-structure-and-interpretation-of-computer-programs-spring-2005/video_galleries/video-lectures/
a book which I can recommend is:
https://www.goodreads.com/en/book/show/39996759-a-philosophy-of-software-design
and you may find it helpful to read through some of the source at:
http://literateprogramming.com/
Alaska-Kid@reddit
Well, you can buy a wireless bluetooth keyboard with a battery for your phone. Also read about installing termux on your phone.
Horror-Ad7244@reddit
I don't think that'd be the case for her, I've seen a lot of strict parents...i think they won't let her purchase that keyboard
Alaska-Kid@reddit
₹1,000 - ₹1,500 is this a lot or a little?
MrPureinstinct@reddit
Do you have access to a local library? Their computers aren't going to be mind blowing as far as speed, but it might be nicer than learning everything on your phone.
DrWongKC@reddit
I'm really sorry about the toxic family. Lots of problems in the world are created by terrible people. Hope it gets easier for you, and I'm certain it will if you ever get a chance to move out of your family's house.
I feel the way forward for you is to research on which technology is most in demand for the location that you'll work in, then if that's also something you want to do, learn that.
Consider moving out of your family's house when you earn enough as the emotional toll and abuses, and being able to not be in that toxic environment, will enable you to learn better or just avoid painful situations. Hopefully there will be minimal to no permanent harm done to you.
Take note that we may end up working for a toxic workplace too and it's better to learn how to protect yourself, both in your family environment, workplace, and anywhere. Learn not to overthink and stay rooted and grounded in the physical world you're in. Trust your thoughts, emotions and gut feel, don't let others tell you poor or even dangerous advises.
Consider doing internships to gain real work experiences, learn to sell yourself well on your resume, LinkedIn and in interviews.
The best thing for you is learning how to protect yourself, and plan to move out of there or be away from them.
and if you ever choose to get a life partner, be careful not to repeat the mistake of being with someone toxic. We tend to be attracted to who we find familiar, and children from toxic family, have a tendency to gravitate to toxic people too, even when they themselves aren't. Break that cycle.
Ill_Help_7132@reddit (OP)
Your advice is very helpful, thank you.
priused@reddit
Also check out “girls can code” and “girls who code” websites. They can be valuable resources to get you started in your career choice and may even be able to help with job placement.
Realjayvince@reddit
As you’ve been told, there are many areas.. ML/AI Data Front end (react, ex) Web dev in general
Take some time and gather information about all the possible areas and invest your time only in that. But since you said you want to be a ML/AI engineer and Web I suggest you get into python. Use python to learn DSA, learn AI integration and all the Machine learning stuff and learn some Django too to make web APIs. Based on what you want, Python does it all
priused@reddit
Agreed.. if you are interested in machine learning, machine vision (object recognition), AI or even embedded programming… learning python would be a logical first step.
You might be able to hobble together a computer using a raspberry pi, keyboard, mouse and monitor. These systems can be put together cheaply (often with parts that others have thrown away). And I also recommended that you learn at least a little bit of unix/linux command line/shell programming.
pmojix@reddit
I know how you feel In terms of confusion. Do you know what kind of programming aspects do you enjoy?
Graver69@reddit
I would learn Python initially for sure.
There are variuous python apps and learning sites you can do on a phone although, ultimately, you are limited without access to a computer.
Dunno much about being a girl in India but maybe you can get access to a friend's one, go to a library and use one there or whatever. Learning to code on a phone alone is going to be very limiting.
priused@reddit
That being said… get a library card (if you don’t have one already). There are many “theory “ books that will help you understand computer concepts that are universal.
Personally, I would stay away from the “popular“ languages (lots of competition and can go out of fashion quickly) and would specialize in older more established languages (less competition and less change). For instance, many banks still use cobol, but not many programmers are willing to work with that language anymore (not sexy or trendy).
Anyway, find something that interests you… and try to read at least 5 books on the subject. Use Replit (or something similar) for coding. Hopefully your library has computers that you can use.
Also, take a typing class if you can find one. Becoming a touch typist will help you regardless of the language you learn.
gary-nyc@reddit
You probably want to start with a high-level programming language that does not force you into understanding too many low-level details up front and a problem domain (specialty) that does not force you into understanding too many independent technologies/tools up front. Pick something modern like Swift or Python, perhaps even JavaScript/TypeScript, but low-level programming languages like C++ or Rust are probably not optimal for a newcomer. Make decent effort to understand how to use various DSA entities, but do not waste too much time understanding DSA internals, as you always get a standard library that already implements DSA for you. You just need to know what DSA tool to use for what purpose. For the problem domain I would recommend either iOS apps in Swift/SwiftUI (the Apple Xcode development environment is of very decent quality, but unfortunately requires a macOS desktop/laptop M1 CPU system; you can also try Swift Playground for a gamified learning experience if you can get your hands on an iPad) or maybe active web page development in JavaScript/React. Data Science might require (?) some serious math (?) skills, if I am not mistaken, which could significantly slow you down. Cloud development with AWS can (?) get quite complicated (?). It would be great if you could freelance or get a job as soon as possible using what you have learned to buy equipment and become independent, but I am not sure how accessible each problem domain market is to newcomers these days. You might want to research which problem domain can get you a job the easiest. Whatever you choose, once you learn one particular programming language well, you will be much better positioned to make your own decisions about what other technologies to possibly switch to. Feel free to reach out to me in the future over DM whenever you have any questions.
code_tutor@reddit
You have a dream and you're determined... but you don't know what the dream is? Is it just the generic Indian moves abroad dream? Maybe you can find some expats for advice. Idk if there are any subs like that.
As far as learning, maybe you could watch the CS50 videos, ByteByteGo, or some AWS stuff on a phone.
I know nothing about going abroad but it's probably good to know both programming and systems design, so you might need it all to impress.
Ill_Help_7132@reddit (OP)
Thank you a lot for the information
tpaul_6@reddit
The first thing you should do is watch CS50, it's the best introduction to computer science and it is completely free. After that you can do some basic research on different fields of cs, there are many - web dev, aiml, cyber security, devops, cloud computing.
But I will say that fields like cyber sec are a bit difficult compared to others so make sure that you do what interests you! Don't just blindly listen, take advice and choose the best for you!
Also check out Replit, you can code on your phone using Replit. All the best to a fellow cs girlie, you got this!💓
Ill_Help_7132@reddit (OP)
Thank you that's really good information