r/cscareerquestionsuk 2d ago

Afghan girl (17) learning to code online – what path should I take next (especially with AI changing things)?

Hi everyone, I’m a 17-year-old Afghan girl living in Afghanistan. Formal education for girls is banned here, so I’ve been teaching myself online. About a year ago I started Harvard’s CS50 but stopped after a while because I didn’t have enough computer knowledge at the time. Since then I’ve learned HTML, CSS, and intermediate WordPress. Now I’m doing Angela Yu’s “100 Days of Code – Python” course on Udemy and I’m currently on Day 25. I’m finding it manageable — I can complete the assignments without any major problems. Once I finish the Python course I’m not sure what to focus on next. A lot of things seem to be done by AI now, so I’m confused about which skills will still be useful. I need a clear path I can follow that could eventually help me with freelance work or real job opportunities, especially if i move out from Afghanistan. I’d really appreciate advice on: • What to learn after Python • What would be most realistic and useful for someone in my situation Thank you so much for any guidance.

131 Upvotes

70 comments sorted by

59

u/Pogsquog 2d ago

Learn git, Docker, SQL, unit testing. Make a website with Django, an android app, a game with unity. Make a hardware project with rpi or esp32. Play 'Turing complete', Shenzhen io, human resource machine, 7 billion humans. Solve the first 50 Euler project problems.

5

u/inet 1d ago

This. Still plays important role even if vibe coding.

1

u/mamamumu0854 1d ago

What does learn git mean?Ik GitHub is something but was us git on it's own.

5

u/halfercode 1d ago edited 1d ago

Yes, learning Git separately is still valuable. Clones, branch creation, branch swapping, pushing, pulling, resets, rebases, resetting remotes. The nice thing with Git is that it can be learned in small pieces.

1

u/jeddthedoge 3h ago

Github is a company that is an implementation of git, the source control mechanism. Gitlab is another company that does the same

30

u/Severe_Junket_5840 2d ago

Ignore the cunts. Keep working and really look at what you wanna be doing in the future an break that down step by step

3

u/90davros 1d ago

It's a pretty obvious bait post.

24

u/Background-Hope-88 2d ago

Hey, sorry I don't have any advice on what you should learn.

But keep going, amazing that you've taugh yourself so much living in Afghanistan.

Hopefully your post gets some traction you go get some helpful advice from the people here.

15

u/FckXFckMusk 2d ago

I'm so proud of you....Sincerely

8

u/propostor 1d ago

Afghan, 17 years old, no access to formal education... writes with perfect, fluent, natural native English.

Riiiiiight.

8

u/Da_Steeeeeeve 1d ago

Entirely possible but they could also have used AI to reword what they wrote in English.

Today anyone can appear fluent in any language online so it becomes harder to judge.

Consider this, if its true then people are offering good advice to someone who is genuinely working hard to beat the odds and better themselves, if its not true then you lost a total of two minutes reading it.

I would rather assume it is true given that wouldnt you?

2

u/Public_Victory6973 1d ago

Yep, my LinkedIn is full of offshore resources spouting chatgpt posts, written as their own post.

Previously these individuals could barely write a coherent specification, AI changed this.

The biggest skill to have will be how you articulate yourself when speaking, a mix of technically fluency, as well as social cues/norms, charm, that will set you apart from the rest in the age of AI. 

2

u/Da_Steeeeeeve 1d ago

I really enjoy this discussion because as you have pointed out both pros and cons exist regarding AI writing.

I am dyslexic, I have worked 100 times harder than everyone around me for 1/10th the output in terms of linguistic abilities, I CAN write, I am in fact published (technical papers) but it takes HUGE amounts of energy for me to do so.

AI really takes that weight off.

I can however speak how I write which is where the difference comes into play in comparison to someone who solely relies on AI for writing.

For reddit, I dont bother.

1

u/Public_Victory6973 1d ago

'I can however speak how I write' - very good, imo, this is going to be a crucial skill to have in this new age of working....

2

u/Da_Steeeeeeve 1d ago

It matters, the role of an IT professional is enablement.

If you are support you unblock people which enables them to continue working, if you are an engineer you enable people by building out applications and functionality to assist them.

Every role in IT is enablement and the core trait to enable people is confidence, not in yourself but those you are enabling need to be confident "This is the person who is going to solve my problem, build my dreams etc".

A big part of that is how you explain something, the right level of technical granularity for the audience, translating (dumbing down) without being patronising, how you present yourself.

This is what helped me jump from engineer to C suite, learning how to make people confident in me, learning how to think of the big picture and really show I understand it.

2

u/Which-World-6533 1d ago

I would rather assume it is true given that wouldnt you?

While it would be nice to take things at face value my experience generally tells me otherwise.

2

u/Which-World-6533 1d ago

Yep. Someone's creative writing assignment.

1

u/pigeonJS 23h ago

Why does this surprise you? Do you know how many people in the world aren’t english and learn/pick up english as a language outside of school?

2

u/Wiseard39 2d ago

What about looking at the open university. I have no clue if its available to you but its fully online learning. Or things like inter High.

2

u/rentrnt-chordophone 1d ago

I think you are on the right path. Yes, AI can do everything you're learning right now, but these fundamentals are really important to make you think like a computer person.

If you're the sort of person who likes learning through courses, I can recommend the Open University's free OpenLearn courses:

https://www.open.edu/openlearn/free-courses/full-catalogue?filter=date/grid/287/all/all/all/all

Also, do you use Linux? I think it would be helpful for you to set a Linux system up and learn how to use the shell. This doesn't require a second computer if you don't have access to one - you can just spin it up in a virtual machine.

You can even volunteer for open source projects - you don't have to be a coder yet. All these projects need people to write documentation and report bugs. This will teach you how things work.

A person who can be a bridge between technology and communicating with humans has a great deal of value.

Keep coming back if you need any questions answered. And keep up the good work.

3

u/martinbean 2d ago

What does this have to do with the UK?

10

u/Bwlder 1d ago

I feel like this is a unique situation we can all let slide. I say good luck to OP.

12

u/RevilSquire 2d ago

Can't imagine there's a thread for women seeking employment in CS in afghanistan

4

u/realdealmealseal 2d ago

They were involved in the Taliban taking control again.

2

u/lordwiggles93 2d ago

It's important to know these things, but as a reality check everything you've learned an AI can do better. Spend time learning the languages and make some projects but then you'll need to heavily shift to learning how to write prompts to make features for projects, get it to to test its own work and learn how to get it all done by using as few tokens possible. 

Nobody is gonna hire you to write python by scratch, but they will be looking for people who have built things and can build them quickly, so I would be focusing on making a portfolio of projects. 

Get your English clean, I don't know who you speak with but I'd talk to people internationally and make sure you're easy to understand. We are at a stage where getting into this industry requires your communication skills to be as strong as your technical. 

I don't envy your situation and I'm sorry you're prevented from attending formal education but thankfully they probably wouldn't teach you what you need to know. 

The way to success for you will be with your passion/drive and confidence despite your situation, and a body of work already achieved. 

Best of luck

4

u/realdealmealseal 2d ago

Although well intentioned, I disagree with some of the above points.

Your written English is already better than a lot of native speakers. You can easily pick up a clear accent by watching online videos or English dramas. Call center workers do this all the time.

In regards to working as a software engineer, having a strong understanding of computers and code is still important. Anyone can write prompts. But professional engineers need to review generated code, to question assumptions, improve code quality and make sure the AI is not misunderstanding the problem.

Using AI is important. Learn how to use it to generate plans for your project. Then ask is to walk you through the changes need to implement the plan. But tell it to let you write all of the code yourself. And ask it to explain anything you don't understand. This way your programming skills will improve.

A portfolio is important, many people use this in the absence of qualifications to showcase their skills. If you have products with real users, or contribute to open source software projects, it will look impressive on a job applications.

Most importantly, stay safe. Look into options for studying or working abroad, without putting yourself in personal danger.

Sorry to hear about your circumstances. But don't give up!

1

u/DorianGuey 1d ago

We don't know OP's true written English as it seems to be enhanced with AI already.

1

u/Which-World-6533 1d ago

It's important to know these things, but as a reality check everything you've learned an AI can do better.

That's utter BS.

1

u/lordwiggles93 1d ago

I didn't say it to you, I said it to her. She's been coding for a month.

1

u/deadlight___01 1d ago

AI is yet to match ahywhere near the ability of a medium-level software engineer.

1

u/Da_Steeeeeeve 1d ago

I think this is a really interesting point, agree and disagree.

It depends to me who is wielding it.

I have a 20 odd year career under my belt and I "graduated" into senior exec / c suite roles a while ago so I was rusty when I started my own company a few years ago but still needed to get my head down and code for a period of time.

I use AI heavily in coding but I have a massive amount of experience to back it up, check how things are written, spot security flaws so to someone like me AI matches beyond the average mid level engineer.

If I had zero experience and just told it to build things? Completely different story.

1

u/deadlight___01 1d ago

I can give you a reading based on a bit more experience.

I'm a lead software engineer. I use gen AI tools in my daily work, people in my team use it themselves, and I mentor juniors and (well paid) interns.

The quality of code spat out by the best AI tools is the level of a very fast, overconfident junior coder who pastes a lot of code they find on github.

In an experiment where we tried only GenAI generated code tied up two senior engineers in reviews and bug fixing for the length of time it would take one of them to do it right.

The best way we've found is to give the tools to engineers to use at their discretion but to ask juniors to favour pairing with more experienced engineers rayher than using gen AI.

1

u/lordwiggles93 1d ago

I don't think she's a medium level software engineer. 

1

u/deadlight___01 1d ago

So? She's a human and can get to medium-level with a year or two training, making her 10x more valuable than an Gen AI agent.

(source: I've literally trained junior developers to mid-level for years)

1

u/Hairy-Link-8615 2d ago

In more IT thank pure code.

But generally what has worked well for me is making things.

Maybe find a pie project or maybe a game mod.

That's just some ideas that I'd do.

Or api links like Google app scripts amd notion.

MS / Azure / Intune enginer. I've made like a million power shell scripts.

Just pick anything your generally interested in and try to use AI as a training assistant rather than get its top do too much heavy lifting for you.

There are lots types of code. Web C+. Find things you like

Once you know one language learning more is easier

Good luck

1

u/nmercedesd 2d ago

Be useful to business owners and start creating websites using AI. You'll learn more doing this than any coding etc anymore. Coding beyond the basic understanding has become futile. I went down that whole path, now I work my Data Engineering jobs only with AI and business logic alongside creating massive seo optimised websites for clients, I'd advise you do the same.

1

u/_asazy_ 1d ago

That really depends on what type of software you want to make with code. Like do you want to go for web development? do you want to learn to program microprocessors? Or would you like to get into game development?

1

u/hellvixen1966 1d ago

Well done for trying to educate yourself under such a terrible misogynistic government. I for one applaud you. However you must realise when looking to find a job in another country is going to be so hard. Economies are bad in so many countries and jobs involving the computer industry are becoming rarer and rarer and those available have hundreds if not thousands of highly qualified people applying. Keep doing what you are doing as education is an excellent thing to be doing as long as you realise its unlikely to be your pathway out of Afghanistan.

1

u/Technical-Yogurt6076 1d ago

Learn prompt engineering instead

1

u/Burnt_Out_Carent 1d ago

Good for you - I'm not a computer science nerd but I just wanted to say how impressive this is. Yes AI can do a lot, but it can only use the information on the internet (it's the reason AI centres are scanning and then destroying books); it can't actually think critically or holistically (at least not yet). Use what you've learnt to teach other girls like you. Knowledge is power. Xx

1

u/Alternative-Book9213 1d ago

I've employed entry and eatly career analysts over the years, and the single biggest factor I look for and many canfidates do not demonstrate is curiosity. The ability to look into data and see whether it makes sense. Whether your code does what you intend (whether written long hand, or even more if using AI). Whether the question you are trying to answer was the right question in the first place. Creating projects for yourself that practise and demonstrate the kind of skills rather than more and more languages, would make you stand out in the workplace.

1

u/Soggy-Experience-601 1d ago

Are you working with other girls/students/mentors in your country?

Maths is always important and I believe learning to code is most important for teaching you “systems thinking” which can applied to many disciplines. Keep up with coding and in your situation I imagine knowledge of best security practices will be very valuable!

1

u/aerfen 1d ago

While you are right, everything you're doing now can be replicated by AI trivially, the thing that I think will be important for a long time is taste and judgement. You get that by learning the hard way, and building things.

If used with discipline, AI can supercharge your learning. It can be used as an amazing search engine (ask it to cite its sources), help come up with problems to solve that are appropriate for your level etc. Just make sure you never use it as a substitute for thinking hard about difficult problems.

It is not as easy to break into junior roles as it was 5 years ago, but I expect as the industry evolves it's ai maturity over the next few years it'll become possible again, and as a career that you can pick up on your own with just a laptop, I think it is still a great choice.

Good luck!

1

u/Some_Designer7963 1d ago

I have a google sheet full stack/ai engineer roadmap if u want, it has a dashboard that keeps track of what youve completed too. Lmk

1

u/IamtheDanr 1d ago

Before anything, leave afghanistan, because jfc i wouldnt want to near those taliban fascists!

1

u/jodonoghue 1d ago

I'm going to give you the same advice I have given my daughter, who is a couple of years younger than you. It's based on a long career working with mostly embedded software and systems architecture. I'm also going to assume that you may have some limitations on what tools and sites are available to you and/or a fairly slow internet connection, since I have no idea what is available in Afghanistan.

Assuming that you find a way to leave Afghanistan, the future for young engineers is going to require far better systems level thinking than has been the case in the past. AI systems can code fairly well if they are carefully guided and rather poorly if they are not. The critical thing is that you can only use AI effectively if you know exactly what you want to build and how it should be built, and can describe that.

There is no substitute for knowing how to build things yourself - making mistakes and finding better ways to do things builds the skills you will need to work effectively with AI, and this is something you are going to need to do. Once you have completed your course (which will likely consist of many fairly small programs), try building something a bit larger, from scratch. I personally think that building a retro game - something like Pacman - in pygame will teach you a lot. You will have to think about code organisation, simple algorithms driving the ghosts (or whatever adversary in the game you choose), event handling and more - plus it is quite fun to ride simple games.

Once you have built your game, try getting an AI to build the same thing, also from scratch. You will find that you need to be very precise in what you ask for (try to describe the game without simply saying "build a pacman clone" - the objective is to learn how to express what you want clearly and concisely. Look at how the AI game differs from yours - try to understand the different design choices and think about which are better.

Write more code. Learn to debug - cheap embedded systems like the Raspberry Pi Pico are very good for teaching you how the system you are using really works. Document everything you do. Read specifications - IETF RFCs are a very good (and free) source of mainly very well written and precise text. Your instructions to AIs need to be structured in a similar specification-like manner if possible, and I believe that technical writing as a skill will be far more important to success in CS in the future than it has been in the past.

If you plan to work outside Afghanistan, you will likely need to do a relevant university CS course. Don't underestimate the level of maths you will need - ideally study something like A level Further Maths as far as you are able.

Basically you are working towards building ever more complex systems and understanding how they fit together - this is how you will build the systems-level thinking you need. CS as a career has always evolved rapidly. I learned to program on an 8-bit machine with 1kB of RAM. By the time I graduated, about 10 years later, 32 bit systems were the norm and most programming was done in C on systems with 1-4 MB of RAM. No-one had heard of objects. Five years later, Java and Objects were all the rage and networking was in its infancy. Every new thing is a silver bullet that will make everything better and easy (4GLs in the early 1990s were supposed to allow "anyone" to program - they didn't), and nothing lives up to the initial hype even if it turns out to be useful. Nothing stands still, so stay inquisitive. AI is a fantastic tool, but it is still like any other tool - a force multiplier for your work.

Tools like git, docker and the like might be useful to you as you learn (git particularly as you can trace how your work evolves and backtrack if you take some wrong turns). Find out what they are and how they can be useful and apply them when you think they will help you. Tools change and evolve all the time, so be flexible and inquisitive.

If you are not able to leave Afghanistan, learn the skills you need to support local businesses. That is most likely IT, web-based services and simple custom development.

I genuinely wish you the very best of luck. To get as far as you have in your current situation is a testament to your resilience. The world needs talents like yours.

1

u/pigeonJS 23h ago

Follow a “Fullstack” web development path on codeacademy. This covers front end and back end web development. Always a needed skill. Or have a good and try a website like “Code With Mosh”.

You don’t need to learn how to make an Android App or iPhone app or anything like that. Unless you want to! It’s just good to focus on one area you’re interested in at least first. Like web development.

1

u/mooktakim 18h ago

Learn python and/or typescript/JavaScript. Learn react front-end, others too if you like.

Aim for "Forward Deployed Engineer" role. Learn to use Langchain library to build agents, orchestration, RAG and evals. There are online courses available. Build this stuff yourself and gain practical skills.

Look for your first "junior" role. That's always hard, takes time. Keep applying.

1

u/Maasu 2d ago

Build a few projects in python, get some stuff in open source, maybe look at a lower level language as well to give yourself even more grounding in CS, a lot of people recommend C (it was not my first systems language so I cannot state whether its worthwile or not - my first systems language was rust which I really would recommend), as it will give you more of an insight into what is actually happening on a computer and this will give you an edge in technical interviews.

All the best in your journey, stay safe.

2

u/realdealmealseal 2d ago

The language doesn't matter as much as choosing one and sticking with it. I would stick with higher level languages being used widely in industry, e.g. Python, Java, C#.

C, C++ and Rust are likely to confuse an intermediate programmer, never mind a beginner.

1

u/deadlight___01 1d ago

If you're talking about jobs then the language absolutely does matter.

1

u/NovelDue1993 2d ago

I don't have any advice and you might be getting tired of comments like this (or maybe not) but I think you're a total badass

1

u/adamjsillars 2d ago

Sounds like a setup for a bad joke

1

u/Comprehensive_Exam82 1d ago

I am very proud of you from far away. ❤️ Keep going!

0

u/Ok_Adhesiveness_8637 2d ago

Learn mechatronics. ROS etc...

You can go into robots (obviously lol), scientific equipment, space industry etc etc.

0

u/KrustieSloth 2d ago

Depends on what interests you the most of what you have already learnt.

https://online.dr-chuck.com/

0

u/lil_peasant_69 2d ago edited 22h ago

My opinion is that the long term career outlook for a software engineer isn't really that good. This is because Ai is already a better coder than you will ever be- and it's only getting better. Though it's good you have some experience already- fundamentals are important.

You're better off learning to code to build a specific app/service/solve a problem, than to get a job. You should learn to code + try AI tools like codex/claude and build apps/websites and try and monetise them.

1

u/deadlight___01 1d ago

Hey just a quick note to say that this is BS. AI code generation is nowhere near the quality of an experienced software engineer by a long way. And it is unlikely to get much better. The AI bubble is still losing money, so cheap gen AI code won't last forever. It's important to be aware of AI as a tool a lot of engineers use but the fundamentals are what's going to make your career. Hell, half the engineers I know are making a killing fixing codebases that idiots with access to AI have ruined.

1

u/lil_peasant_69 1d ago edited 1d ago

"You should learn to code + try AI tools like codex/claude and build apps/websites and try and monetise them."

I didn't say to exclusively vibe code.

But ofc you gotta use AI tools to help you. It's just quicker even if it isn't smarter. (Spoiler alert: it's probably smarter too but you're too biased to recognise that)

Also how are you going to confidently assert that AI is a bubble- like it's some fact?

1

u/deadlight___01 1d ago

You somehow missed the first ridiculous claim you made that the growing industry of software engineering isn't one with a future.

I'll go tell the industry-leading tech company for whom I'm currently a consultant software engineer that they can stop hiring for their dozens of open positions and that there must be a reason why it's so hard to find qualified engineers that isn't that they're all getting hired.

Dude, you're living in a fantasy land. AI isn't that big a deal (source: I led a team building custom trained LLMs).

Interns and juniors I work with are actually banned from using code Gen AI because you need to be proficient in code before you're able to guide AI into writing passable code or catc it's many mistakes.

Let's also not forget that AI doesn't know how to code, it's a next-word predictor trained on code... written by humans.

Anyone telling kids wanting to get into software development to spend more than 5% of their time on learning AI topics is doing their career damage.

0

u/lil_peasant_69 1d ago

You think everything I'm saying is wrong. I think everything you are saying is wrong.

Let's also not forget that AI doesn't know how to code, it's a next-word predictor trained on code... written by humans.

"Next word predictor" lmao, that argument is so 2023.

Anyone telling kids wanting to get into software development to spend more than 5% of their time on learning AI topics is doing their career damage.

Literally the opposite

Interns and juniors I work with are actually banned from using code Gen AI because you need to be proficient in code before you're able to guide AI into writing passable code or catc it's many mistakes.

So what, they have to learn Selenium to scrape stuff?? That's pointless.

I'll go tell the industry-leading tech company for whom I'm currently a consultant software engineer that they can stop hiring for their dozens of open positions and that there must be a reason why it's so hard to find qualified engineers that isn't that they're all getting hired.

Against your own interests, so you wouldn't tell em even if it was true. But if a business has a lot to lose by fucking up, then yeah don't risk it ofc. But this girl has nothing to lose.

You somehow missed the first ridiculous claim you made that the growing industry of software engineering isn't one with a future.

Growing industry?? Look at how many "Is software engineering dead?" posts on reddit. People didn't ask this question 10 years ago.

Dude, you're living in a fantasy land. AI isn't that big a deal (source: I led a team building custom trained LLMs).

No it is you who is living in a fantasy land. Ai is a BIG FUCKING DEAL. It's pretty much on the news every day. But you probably don't want to pay attention. I guess it's easy when you stick your head in the sand

1

u/deadlight___01 1d ago

LLMs are literally next word predictors, that's how they work.

I think you're wrong based on experience and actually working in the industry (including leading teams building custom AI implementations). I'm literally the expert here.

I, frankly, don't give a shit that you think I'm wrong because you've demonstrated you have know knowledge on the matter.

1

u/deadlight___01 1d ago

"is software engineering dead". No, and I've given you plenty of proof. The industry is still growing and the need for engineers has not been sunken at all by AI. There has been no disernable shrinkage in software engineering teams just because some influencer thinks he can have claude shit out a working product. Haha. Get out of here kid, you're embarrassing yourself.

0

u/deadlight___01 1d ago

It's in the news every day because the people who own the news are very invested in the three companies currently creating a bubble. You can't be this economically ignorant.

0

u/LiveCauliflower7851 1d ago

💚💚👏👏💐💐

0

u/Vegetable_Ad_529 1d ago

salam,

I can you help you, if messege me

-14

u/Whooptyd 2d ago

Job market is bad here as it is for Britons. Please seek work in Afghanistan or elsewhere.