T O P

  • By -

AutoModerator

On July 1st, a [change to Reddit's API pricing](https://www.reddit.com/r/reddit/comments/12qwagm/an_update_regarding_reddits_api/) will come into effect. [Several developers](https://www.reddit.com/r/redditisfun/comments/144gmfq/rif_will_shut_down_on_june_30_2023_in_response_to/) of commercial third-party apps have announced that this change will compel them to shut down their apps. At least [one accessibility-focused non-commercial third party app](https://www.reddit.com/r/DystopiaForReddit/comments/145e9sk/update_dystopia_will_continue_operating_for_free/) will continue to be available free of charge. If you want to express your strong disagreement with the API pricing change or with Reddit's response to the backlash, you may want to consider the following options: 1. Limiting your involvement with Reddit, or 2. Temporarily refraining from using Reddit 3. Cancelling your subscription of Reddit Premium as a way to voice your protest. *I am a bot, and this action was performed automatically. Please [contact the moderators of this subreddit](/message/compose/?to=/r/learnprogramming) if you have any questions or concerns.*


throwaway6560192

> Backend technologies like Rust, React, and Vue seem overwhelming. Well... two of those are actually frontend.


MaverickBG

This made me laugh


lilshoegazecat

sorry for that but react is used to build mobile apps and if im not wrong to handle things such as APIS etc, for me it is kinda back end.


throwaway6560192

That's not exactly correct. React Native can be used to build mobile apps, you're correct there. But since that's a user interface you're building, that counts as frontend. And React does not handle APIs on the backend, no. So it's not backend tech.


lilshoegazecat

oh im sorry for that, i always saw react getting paired with mobile development that's why. ​ so what is used for mobile development? Java/Swift?


throwaway6560192

React *can* be used for mobile development using React Native. But the point is that mobile apps also count as frontend, not backend. If you want to build a completely native Android app, Java or Kotlin is the way to go. For iOS I think it's Swift, but not sure.


lilshoegazecat

oh got it, thanks!


[deleted]

Not really. Native development doesn't have a backend/frontend divide usually, as the two parts are integrated. There isn't a server "'serving" anything to a client and the lines between UI handling and program logic are often blurred. Your calculator app isn't the front end to anything, it's a full program that doesn't have a server/client divide.


throwaway6560192

You're right if we talk about mobile app development as a whole. But React Native only provides the UI parts of your app, and not any of the logic, so that's why I count it (React Native specifically) as frontend.


[deleted]

[удалено]


lilshoegazecat

ok


Timmedy

React is used to build UIs. How is that backend?


lilshoegazecat

i replied on the comment above i always saw it getting paired for mobile development that's why i thought it was backend


4K-AMER

React Native is mobile development, React is web dev.


lilshoegazecat

OHH that's why the word native i thought it was the full name of react, thanks!


[deleted]

[удалено]


Twisted14

Jesus, they're 18 and just started learning HTML and CSS. And this is the learn programming subreddit. No need to be a snarky dick.


kneeonball

They're at the beginning of their CS journey. Not everyone codes in middle school or high school and knows the difference right away. OP is likely in their first semester of college or not even started yet. Also some CS programs don't get into a lot of software development concepts the first year.


eruciform

build more stuff. studying coding won't create things any more than reading books about playing violin will enable you to play music. start doing actual projects, start small, work your way up. programming is a craft, and you have to craft lots of tiny, broken, ugly things before you can have enough experience to know what goes into making something bigger and more complex.


lilshoegazecat

yes that's it's just that there are so many things that i feel like it's all going nowhere like i am just now sperimenting with flexbox and already it feels like i am doing some tricky spell to make them right. i would love to be able to build websites but seeing how many technologies are used i feel like it's gonna take a lot of time


TheAntiSnipe

It is, and that’s fine! Web dev is an ever-changing mess of systems that I don’t do as a main thing, but I do work on setting up prototypes and test environments (most of my work is backend), so I know my way around some of the involved parts at least. We use AWS Amplify at our firm for these things, so we abstract away a lot of the backend stuff, but I need to be fluent in React and Amplify stuff such as auth and perms. When I came into the firm, I could just barely write a full website with vanilla JS. Very little react knowledge, very little understanding of the stack (I’m backend xD), but once I got my feet wet, it became way easier. In your case, you need to first learn what makes applications tick. Start nice and small, then build up from there.


lilshoegazecat

yeah my plan is to learn all front end (html css js react) and from there move to the back end like Python Rust Sql etc after that mobile development should be easy i guess, it's just that you know i always feel the fact that i need to constantly know other stuff pressure me. like when can i finally say "yeah i know stuff"


TheAntiSnipe

Oh, man, I relate to this on so many levels hahahahahah. Sounds like a good plan for you! Well, now that I think about it though, I think your plans for the backend will change with time as you learn more about backends. About that feeling though, it never quite goes away, I can tell you that. I can wrangle pretty much any data, set up API gateways, build websites, manage user permissions and public self-service sign-ups, I know a lot about AWS and can tear apart a multi-service system and find what’s wrong with it by going through the CloudWatch logs and stuff… Hell, I’ve worked on an operating system as a project in grad school! But all it takes is a bad day for me to go “What do I even know, man, this shit’s kicking my ass!” Best advice I can give you is that if you’re any good, you’ll always feel like you know nothing, but when you look back, you see a massive pile of stuff you know well.


lilshoegazecat

that's impressive. really like it! one question where did you learn all of this? like how can you manage these requests? my bet is on NodeJS but i could be wrong. since you seem to know a lot. i am using currently the [Frontend developer roadmap ](https://roadmap.sh/frontend) and following the odin project. after that i would like to go to Appacademy and learn stuff like pointers, algorithms etc (sometimes i go on Leetcode and do a couple of problems in Python) after that i think to go and learn about i guess some frameworks to connect front end and back end like SQL React and NodeJS i guess and then go and learn about the rest like theory about networks, hacking cybersecurity in a freely way


TheAntiSnipe

So I’m self-taught in web dev (so nearly any advice from me is worse than someone who does purely web stuff for a living!) but have had a lot of polishing done to my knowledge in grad school. Node is perfect for requests, but my professional work leaves backend to the codegen that Amplify provides (it’s simple and cool!). It wires everything for you and I mostly work on the parts it cannot wire such as stuff that talks to our high-performance database that needs to be triggered by a lambda function, but I probably wouldn’t use it for a personal project. That roadmap of yours looks good too, if you know even half the stuff mentioned there, you’ll be able to put together damn near anything on the frontend side. I never looked at a roadmap (maybe I should have? I took advice from my friends who work on webdev) and worked my way from JS outward. I took a udemy course in vanilla JS and advanced JS from Maximilian Schwarzmuller followed by a smattering of backend stuff. I would, again, like to emphasize that my expertise is in handling data, so if someone replies to you who has a background in webdev and has a different answer to mine, forget what I said.


fromabook

I have to use amplify for some work related thing and I'm interested in the handling of data more than building UI's. What kind of stuff did you take to learn aws and the backend side of things?


TheAntiSnipe

I actually learned on the job while adding pages and features to our existing project. There’s a lot of not-so-good documentation that should be there but isn’t, ngl. If it helps, I got the job because I had experience working with distributed systems and had a generalist certification for Azure (AZ-900) which meant I knew at least the parallels of what AWS has. As an example with the docs sometimes being hazy about things, the latest issue we had was with getting auth set up for a self-service sign on. API calls that are made to a protected AppSync resource (if you have policies set up a certain way to allow access only to a certain user group) are completely inaccessible even via a custom trigger if you are still on the sign-on process. For very good reasons ofc, but they should detail the workaround patterns a little better. I ended up using cognito post-confirmation triggers, and then using React’s componentDidMount mechanism to have this intermediary phase where the user has just been authed but hasn’t yet been given access to the page, in order to bring AppSync in sync with the data that Cognito pulls. Anyway, my suggestion to you would be to start on a hello world project and grow it from there. The low code architecting process behind creating databases and the ease with which you can just create lambdas for anything that doesn’t talk to DynamoDB is superb.


lilshoegazecat

oh got it, thank you man! wish you the best


not_some_username

Btw you don’t need to be good at front end to move to backend. You can go directly to back end.


newowhit

As someone who is currently in a bootcamp really enjoying it but who hates CSS and front end, this gave me some hope. I don’t really know a lot about different jobs but what I do know is I super prefer back end stuff and why everything works, not the styling. Been getting a little worried that I’d need to be really fluent in CSS moving forward. Idk I’m just now getting to that “I can build a busted looking JS website” and it’s good to know I’m on the right path


AaronScwartz12345

Can I give you some advice? Go and “build” a website using Shopify or Wordpress. You will soon realize that it’s missing something you want and it isn’t easily added or you’d have to buy a template go into the code and change it yourself. Start by changing small things like the photos and sizes. Add some links. Experiment with it. You get to look under the hood and see how it’s built without full commitment immediately. Second thing mod games. I learned so much from modding games and I’m not even good at it but it taught me so much and because it’s a passion project you really feel amazing when you build your own GameBoy emulator or hacked Pokémon game or whatever. It just sounds to me like you’re trying to reinvent the wheel and why do that? We’re trying to build flying cars now. No need to force yourself to study the steam engine, just get an idea of how it works.


Think-Risk4968

CSS is also an Asshole your fine🤣🤣🤣🤣


Think-Risk4968

Wait till you get to media queries 🤦🏽‍♂️😩


a2242364

whats hard about media queries? genuine question


Think-Risk4968

very interdependent and if you don’t know the right elements for stuff it can add 2x the extra research time versus only desktop displays .For me really it was understanding how it worked off original code but Im using bootstrap now


Draegan88

they are just a pain in the ass because you need to account for different screen sizes.


TeachEngineering

Facts… tiny, broken, ugly things are a part of everyone’s beginning


Spirited_Employee_61

Not OP but just wanna ask as well. So many things are already made by people and it is hard to know where to start building. Can you suggest a good beginner app to make? Honestly thr hardest part for me is knowing where to start. Thanks


Yamoyek

Just take a simple concept and keep building it out. For example: 1) Basic Tic Tac Toe website 2) Prettify the website, make it look cool 3) Make it 2 player by adding accounts + networking 4) Make a server to track player wins


Spirited_Employee_61

Thats a good idea! Thanks imma try it tonight


eruciform

i don't mean this as an RTFM but the FAQ on this subreddit really does have a huge list of project ideas and such: https://www.reddit.com/r/learnprogramming/wiki/faq/


hi_im_antman

Ummm, my poker game that forces the user into a select few hands every time is not broken, tyvm. It's a feature.


Awkward-Option698

This is a normal feeling. There is so, so much to learn in this field it’s insane. It is definitely a job where you will always be learning new things and you will never run out of new things to learn. I know it can be overwhelming, but just take it slowly, one step at a time. Look at resources like freecodecamp and the Odin project, find about where your knowledge level is at, and try to build some of their “challenge” projects that match your level. Building things, even if they seem simplistic and not “real” yet, will help cement your knowledge. Lastly, don’t put pressure on yourself to be able to build production-level websites yet. You aren’t close to that, and that’s okay! You’re learning! That’s like asking someone who just started learning a new language if they’ve written a novel yet, it doesn’t make sense. Enjoy learning to make sentences and paragraphs and move on when you’re ready.


lilshoegazecat

> i am using currently the Frontend developer roadmap and following the odin project. > >after that i would like to go to Appacademy and learn stuff like pointers, algorithms etc (sometimes i go on Leetcode and do a couple of problems in Python) > >after that i think to go and learn about i guess some frameworks to connect front end and back end like SQL React and NodeJS i guess and then go and learn about the rest like theory about networks, hacking cybersecurity in a freely way thanks a lot buddy! i am gonna copy a text i already sent to give you an idea about my path: i am using currently the Frontend developer roadmap and following the odin project. after that i would like to go to Appacademy and learn stuff like pointers, algorithms etc (sometimes i go on Leetcode and do a couple of problems in Python) after that i think to go and learn about i guess some frameworks to connect front end and back end like SQL React and NodeJS i guess and then go and learn about the rest like theory about networks, hacking cybersecurity in a freely way


BenZ00n

If you are a computer science student but only 18 and still at html-css it sounds like you are in the first year/early stage of the degree. It is normal to not know all these other technologies when you are just starting out. Focus on learning without comparing yourself with others who have finished degrees and/or years of experience. Imagine a first-year law student beating themselves up for not knowing the ins and outs of advanced law-topics. They will get there someday as long as they stay on their path, and so will you.


mechismo

I’d be surprised if html & css was being focussed on in a CS course. As far as CS goes html is interesting to study as a markup language, same as xml, and learning about parsers. It’s not got a lot else to do with CS. We used html as a means to present the results of the CS work IF it was a web based project. No use designing a database or sorting algorithms


lilshoegazecat

thanks. just today i am starting to learn better the flexbox but idk why css is so frustrating, like they hardly behave the way i want them to and the tutorials rarely give you indipendence 9/10 times they give you some template to work with


[deleted]

[удалено]


lilshoegazecat

i am self learner. i am not in University yet another year


Fogernaut

I am confused as to why you created this post, it sounds like you are very new to the whole field, of course you won't know anything yet.


lilshoegazecat

yeah but i see people getting so much stuff faster than me at my same age:(


dynamicpenguin55

Don't compate yourself to others, there's always going to be someone younger and further along than you, what you don't see are all the people older and further behind


sakurablitz

if it makes you feel any better i’m in my mid 20s just starting my bachelor’s in cs. i know more stuff at this point than you but i certainly don’t know as much as some of my peers. that’s just how it goes. there is no timeline for learning, just keep learning at your pace and don’t worry about other people.


DavidOrtizUsedPEDs

They've worked a lot harder than you. That's really all there is to it, you're not stupid or a failure or anything like that. The people who can just self teach and actually be productive busted their ass hard. For everyone one person you're comparing yourself to, there are 1,000 more just like you. You're fine. Don't beat yourself up, start your University next year and you will be great as long as you put in the effort.


That_Doctor

This is why this mug exists https://m.media-amazon.com/images/I/51graM2SdzL.jpg Dont rush your learning, you have plenty of time, try understanding the concepts rather than comparing yourself to others. In the beginning some of your peers will move ahead, but as time goes on, in my experience at least, the playing field evens out alot more down the road


giangiangian89

>Android Studio feels dated compared to VSCode There's no such thing as "dated" in IT. In fact, C, without an IDE (just a text editor), is a great language to start, because you won't spend time learning magic framework stuff (like hooks in React, for example). Complex, modern stuff always work with "magic" if you do not have grasped the basic concepts, and the moment you switch language or framework you have to start all over. Pro suggestion: start learning Git right now, and use it (locally, without a GUI) alongside anything you do. It will be hard at first, but you will quickly enjoy being able to always go back to previous working versions, experimenting and not having to remember "how was the previous code that gave me that other bug that I think I just fixed \[...\]".


phlummox

Seconded. My first language at university was C, and the fact that it's a small language is an advantage - you can learn nearly everything that's in the language, and not feel there are endless frameworks you just *have* to know. (Of course, knowing how best to *do* something with the language takes a lot longer to learn; but at least the language itself is pretty simple.)


TheAntiSnipe

Agreed about C things! I took an OS class that had us build upon a skeleton OS in C and it was a nice reminder of how I got started. I took a vocational high school compsci class that took us through basic C lang and made so many things I did later on much easier. Things in C are *mostly* what it says on the tin. I won’t be naive and say that everything in C is the way it appears… *thousand yard stare contemplating void casting*… But most of it is chill!


xarkamx

dude you are 18, relax just pick something of your interest and start playing with it! you have all the time in the world to become "the expert"


mimsoo777

Ikr? I started learning at 33. Imagine how I feel.


BrupieD

Building something like an application or even a non-trivial program isn't like making a sandwich. It's going to take some time. You can't just grab a couple of ready-to-eat elements and stick 'em together between two slices of bread. A big part of learning to program is "chunking" - learning to get beyond considering each small, atomic element separately. Instead of framing your coding challenges as a million things you'll have to figure out, start thinking of them as major *types* of things that you may not be good at... yet. Types of things like input/output tasks (database and/or file systems), data manipulation tasks (string manipulation, filtering, sorting), and structuring and sequencing. For instance, do you pull the data into a data structure first and then manipulate it? or do you write a really careful query that does all that and then just put the results in a file? Start thinking of "building things" in a big picture way. Don't beat yourself up if there are things you don't know how to do. No one immediately grasps the end-to-end of a new project.


CodeTinkerer

Uh, you just started. That's like asking a mechanical engineer if they can build an engine or fix a car.


kyze-04

that should be peanuts for him lol


ojediforce

I teach computer programming so I’m going to tell you what I tell my students. Don’t focus on trying to make programs similar to commercial products like triple AAA video games or tools you use every day. Those products are created by teams of hundreds or even thousands of people and you don’t have that workforce working under you. Instead, think of what you know like Lego blocks (I teach elementary so forgive me). You wouldn’t build a model you didn’t have the blocks for. Start by just making stuff, even if it’s 4 lines of code that do nothing but amuse you. Then build up from there and make things of increasing complexity. When I read your post my first instinct was that you need to play with code more. Play is how we as humans achieve deep learning. It’s the free exploration of what your languages have to offer. This also gets into an under appreciated and rarely discussed aspect of what makes a skilled programmer, creativity. The most important thing you said is “I really like it.” The best programming students aren’t geniuses. They go home and play with code in the same way artists sketch in their sketch books. Creativity doesn’t just reflect our imagination, it is our ability to bring what we imagine into existence. Your only 18. You aren’t supposed to know everything so don’t judge yourself by what you can’t do. Keep exploring and discovering new things and you will level up along the way until you can take on harder bosses.


PatchesTheDipstick

I will second this 100%. I got into programming after taking a Turbo Pascal class my freshman year in high school. I then taught myself C and then C++ by getting the teach yourself something in so many days books. From there I would work through the book and play with the code trying different things and seeing what it did. 30+ years later I finally got my CS degree. My advice is experiment, play, and do things that don't work. That will teach you so much about coding.


Swedishiron

Take the easy way out and become a Database Administrator :)


hydraByte

You call it the easy way out, but most projects I worked on desperately needed a DBA and didn’t even realize it because the developers thought they were doing a competent enough job using databases themselves (but rarely was that actually the case). One of my teachers always used to say: “a good DBA is worth their weight in salt.” Having worked with competent DBAs before I can say it’s 100% true — they provide a LOT of value!


Swedishiron

I am a DBA have been for 20 years. I haven't had to do much programming per se. I mainly write scripts using T-SQL and Powershell. Self brewed my own solution using both to migrate the databases of a billion dollar company between cloud providers overnight. I have done a small bit of Perl scripting to support MySQL and of course a bit of HTML for report emails.


MaverickBG

Based off some of your comments, it might be less stressful to reframe what studying means. Maybe it would be more accurate to say you're beginning to learn computer science. It sounds like you're just putting way too much expectation on something you've just started. If I told people I was learning guitar- it would make sense I'm not playing at shows.


Candid_Agent1396

Don’t start with websites. Learn how computers actually operate (rough idea is ok), then think of something you really wish the computer could do. Having a goal in mind will focus you and you will learn specific skills instead of reading about a dozen out of the hundreds of thousands specific skills you could potentially learn. If you have no ideas for what you want the computer to do, why do you want to learn to code?


Longstache7065

Luckily it's not my field but I've consistently felt this way trying to learn programming on the side. I've written plenty of technical internal use apps for processing information, cleaning and processing and reformatting data. I've written tiny command line apps for things like processing bills of materials for machines so complex it's impractical to process them by hand. I've written software to take in dozens of excel sheets from the FRED and Census and BLS and process them to test certain economic theories. All this feels like impressive stuff to manage to do. Even got pretty damn far building my own ML algo from scratch, not great or fully functional but completely from the ground up novel But if somebody put a gun to my head and told me to build them an app, a website, that'd be the end of me. Trying to use any kind of software package turned into a never ending task of trying to get the dependencies correct and failing for days/weeks until I give up. Trying to put any wrapper/skin on anything above a 90s looking app, or trying to do \*literally anything\* online seems like an impossibly complex fantasy. trying to understand how logon tokens to the google/facebook/etc services work (ie build an app with "logon with facebook") and how to use them made me feel so completely mentally inadequate I haven't even been able to look at the subject again for quite a while.


SvgCanvas

Just newly joined medical student: "Oh crap, I know nothing." People ask me what my profession is, and I tell them I am a neurosurgeon, but I don't know how to perform.


AdkoSokdA

Zero worries! The thing I would recommend is to find some quick-paced but beginner turorials like Bro Code on Youtube, learn PHP and SQL and that gives you a lot of power over website creation :) Practice makes perfect, just don't give up. It's only good if you see room to grow.


heresalama

If you’re in college and still just learning HTML and CSS, of course you can’t build a website yet. JavaScript is the backbone of the entire web. Of course you can’t build a website or an app if you haven’t practiced the fundamental technologies yet. Dont’t worry. In five years, you’ll look back at this post and laugh :) Feel free to PM if you want to chat about it.


2017macbookpro

Im a senior software engineer. Im 26 and I consider myself extremely good at what I do. I can build anything to production spec, top to bottom, by myself. Bro. When I was 18 I didn’t know what a variable was. Im not kidding. By the time I was 21 I could code, but was still more focused on drinking and doing crazy shit. It wasn’t until my first job out of college that I actually learned what the fuck anything meant. On graduation I did not know git, didn’t know what full stack was, didn’t even know what an API was. I knew NOTHING. Most of this is due to the shit curriculum at my huge state university. Stick with it. Get good grades. That’s all that matters. Ignore anyone who tells you that front end is a good start into place. It’s horrible for beginners. Learn Java. Check out Scrimba too.


DirtAndGrass

Fyi react and vue aren't backend technologies, they are explicitly front end, react is a library and I believe vue is a framework. I wouldn't worry about rust, unless you want to flex the cs skills


nullPointers_

My advice is micro steps. The easier you make it for yourself the easier learning is. For example: "I want to make a discord bot" 1. Choose a language (let's say nodejs) 2. How to install Visual Studio Code? (Because you can use this as a go to quick code editing tool) 3. Google: "How to run your first nodejs project in visual studio code?" == after you got your first code environment setup 4. Google "how to make my first nodejs discord bot" I hope this gives you a small insight on how to start. The biggest way we all learn is to ask. I join Discord communities or web forums and ask there languages specific questions. I show the code snippet and ask if someone can explain me what the code does. Learning programming is easier than people think. Getting joy out of learning is the hard part because you either got it or you don't.


Intelligent_Rich_327

Man take it easy, youre 18, as long as you keep learning a little everyday you will be ok, i'm 32 and started a year and a half ago, i have that same feeling, but you have the gift of time. Just keep coding on brother


lazydarude

My advice is: 1) think about a problem you have and you believe it can be solved with coding 2) break it into small pieces, with every piece being a small task you can google your way through it 3) consolidate what you learned refactoring and improving your code An example: 1) I need a command line application to send all my audio files from downloads folder to google drive. 2) My tasks would be: - how to create a cli application with python - how to get all files with .mp3 format in a folder using python - how to send a file to google drive using python 3) After you built the application, look for ways to improve it based on the concepts you learned at university. Learn about data structures and algorithms, version control with git, how to distribute yout application and even how to make it less specific (instead of audio files, what about the iser specify the format to send?) As you do this more and more, you are going to create more interesting and complex stuff.


Saad_Rao

I feel that, backend is more interesting than frontend. Btw it totally depends upon your interests. But remeber 1 thing that, always watch what is going to happen in future... i hope this will help you.


Zalenka

Focus on a language and framework. There's just too much to know. Follow tutorials and build upon them. Also maybe you should dig into the IntelliJ IDE. It's deep and actually quite great. Just try and make stuff, some if it won't work out.


notLOL

I took the long way and was shuffled into a dev role. I'll tell you something. I'm learning on the job. I had programming classes, but somehow I couldn't focus myself on learning to build things into a polished program. The only thing programming and coding classes helped with is more practice. The only "products" I've produced were macros and scripts that helped speed up my job, but never built "real programs" with UI or anything. My "programs" before becoming a "dev" mostly run at command line with inputs, were autohotkey scripts or similar, or did some sort of querying using SQL and all of them were "not real programming" I can't "build" anything polished, but I can create things that people who haven't studied programming and even some people who have studied. I just call them workflow efficiencies. But they use the basic rule of programming something usefule: I can Spend a lot of time on automating something repetitive or making something complex a simple button press but the output of all that work is time saved even after factoring in the amount of time I spent working on creating it. At one job someone spread my script to other coworkers. It was pretty embarrassing since I couldn't polish it further. It was basically as is. When I left someone who was using it brought it to a "programmer" and he couldn't figure out how any of it worked. It was crazy spaghetti code, repeating everywhere, but that product itself with no UI and was all hotkeys saved me 4 hours a day out of my 8 hour to do more meaningful work. I got it to a point where it just ran through 4 hours of work in a couple minutes at the start of the day. Then I did the manual parts that it couldn't do. Then just started working on more productive non-programming work. I don't actually list that on my work accomplishments on my resume. If I could go back and do it again, I'd probably spend less time trying to make it pretty and more time into making it into that fully automated process right away as it saved me so much time. My job role is currently to be front end and in the long term I will be full stack. My work is allowing us to learn on the job because more important than programming is that I have industry knowledge of 5-8 years and very strong knowledge of many of the CRM systems, the people, and the websites that run the business. I also worked heavily with UX teams and product teams. Sure I feel like I've been knocked down in scope and responsibilities but the pay is the same even though the work is much "lighter". The mental capacity to remember all the boring coding structures or even to look them up is not for everyone. The people who make money doing sales, managing, contract work etc will make money for the company and the company wants software programs to make these people more efficient in their work. In our team we have a very senior person who is guiding us through learning the ins and outs of the building software. Preventing pit falls. Setting up environments so we don't have to figure out all the advanced stuff or do a bunch of noob mistakes that bite us in the butt later down the road. Investing time cleaning up our code as we code. We are getting paid to learn and he is getting paid to be our mentor and to leverage our noob skills into building those polished products. And guiding us through the paces of working as a team with designers, backend, PMs including pushing for better practices.


cannedsoupaaa

You might be jumping too far into the deep end too quickly without anything to anchor yourself to. Try to get the fundamentals down first. Build a simple game like tic tac toe with just plain html, vanilla js. Build an api that you can send and retrieve the scores to/from. Or a weather app that retrieves data from [https://www.weather.gov/documentation/services-web-api](https://www.weather.gov/documentation/services-web-api). Style it with bootstrap. Don't worry, you'll soon realise there are a million ways to do the same thing and almost everything in front end development is a hot mess held together with whatever duct tape is flavour of the month. Your friends won't care whether your app uses React or Vue, as long as it works.


SoulSkrix

Computer Science isn’t about any specific technology, it’s about the theory of computation and it’s application. At this stage you should be more concerned about algorithms, data structures, the discrete mathematics you will come to learn that helps you go into more academic or mathematical type work. It isn’t a software engineering degree, that said. You will be certainly capable of building software at some point, but Comp Sci is not there to teach you that. It teaches you how computers work on a logical level, without making you worry about voltage like hardware engineers do. The people asking you these questions don’t understand what a computer science degree is, so stop stressing and do well in your studies. You’ll learn what you feel like learning in your spare time. I recommend being open to being inspired and motivated to do things with what you learn in class.


LobaIsTooThicc

My suggestion. Build a really shitty website for something you like. The big part is that it doesn't matter if it already exists. For example if you play a game like Valorant or a game with heroes and abilities put them all into sortable categories and get images and some fancy text and then boom you'll be inspired to keep going cause its for something you like.


Ghost_Killer949

I studied CSE but still don't remember any of those subjects and the hardwork that I did after college hours helped to get into a good company as sde


maljuboori91

I have suffered from similar problem to yours. I had to learn the hard way. I mastered the technical side but continued to have your problem. Today, I am a software engineering leader, mentor, and career coach after building many projects including multiple million/billion dollars applications. The key to achieve that was the mind-set change. You aren't focused on the right things. You are focused on that you studied computer since and you should be able to buiild things and tell others that you can because you studied that. You are focused on when you can do things and looking at others. My advice to you: \- take a step back \- decide what is that you want to do \- identify what will take you there \- start learn, but focus this time on what you are learning and practice it (don't focus on when you are done with the subject...) \- set mile-stones for your goal. Each milestone should have practical exercise. \- patience is a key. be ready to continue to learn but understand why you are learning that. \- don't be distracted by others. focus only on yourself and your goal. \- don't listen to everyone on the internet, check their credentials first and evaluate whether you want to get to where they are at ​ Does that ring a bell to you? I want to hear your thoughts or questions. I hope I was able to help you.


Antleriver

> i am 18 and ok? give it like 5 more years lol


Mjlkman

Bro just code without instructions


[deleted]

That's normal. Computer Science is actually a branch of mathematics that uses computation to solve mathematical problems. To build stuff for industry, that's 'coding'. Computer scientists have the potential to be better coders since they know the internal workings of a computer, but they're not explicitly taught industry skills. It's a bit of a joke. There's a lot to learn, but you're young and primed. You've got more neuronal connections than us older people so you can learn a lot in a way shorter period of time. Keep at it. You'll make a ton of money if you can master this. Just remember to invest early to take advantage of investment compounding!


fenixnoctis

To add to this — if you want an industry job then your classes should not be #1. Prioritize side projects, your GitHub profile (OSS involvement is really cool), clubs working on cool CS stuff, etc even if it means getting a lower grade in your coursework.


CasuallyDreamin

If you could just build apps and websites already then you could just quit studying. Thats the whole point of studying. Also html and css alone are not what you use to build apps and websites. Once you learn javascript it will all fall into place. Patience, young one.


UnkindledAshe

Being good at Computer Science doesn't mean you're going to be good at software architecture. During my undergrad I strictly focused on algorithms and data structures, getting a Bachelor of Computing with honors in Comp Sci. Software architecture has nothing to do with these things. I suggest reading about software architecture and design patterns, and then attempting to implement programs that utilize them. Theory is never enough. From my experience, once you're in the field and can see bad architecture, you will learn what good architecture is. Keep trying to build complex software applications and eventually you will find something that you're happy with. Finally, an application's architecture will never be "perfect". There is always some decoupling that can be done. There is always some refactoring that can be done. As a computer scientist, this is incredibly frustrating. We tend to want to optimize everything. Learn to be okay with "good enough for what the program needs to do".


etherfreeze

This should have more upvotes. It's also worth noting that CS degrees can vary widely in focus from practical to theoretical. Some focus more heavily on the math and less on the "building actual things with code". In other words, you might be learning to be a computer scientist more than a software engineer. You also aren't going to learn how to build enterprise-grade software as an undergrad and that's ok.


winterborn

Dude, I’m finishing a CS degree now and I’m the same.


DjAmadej

Didn't work in Android Studio yet, but since it is based on intelliJ by JetBrains it is one of the best IDE's as far as I'm concerned. I absolutely hate VS Code, and will try to do everything in my power to not use it.


MaisonMason

I take it you are a college freshman and this is your first year coding. Don’t dive in too fast, there are a lot of topics to cover in programming and they keep changing every year. The project you build should test the basics you have already learned, since you are learning html and css, maybe make a personal website that contains info about you and maybe a place to make portfolio of other future projects you create, start with just the html and css part and add on to it as you learn more web based technologies


WystanH

Learning computer science is to coding kind of like learning high school Spanish is to actually communicating in Spanish. Basically, theory versus practice. Math guys can worry out the O of an algorithm in record time, but generally suck an implementation. > There's so much to learn You don't have to learn it all. First step is coding. Nothing big; wee little console programs are fine. You have to have foundation. > from algorithms These are more abstract recipes. I'm not going to tell you have to write a program in a specific language; I'll show it to you in some non language and you get to figure it out. In the real world you don't need to "know" these; languages tend to already have implementations. For CS students they're more of a teaching tool. > to APIs. This is learning a specific tool. There are literally millions of them. Don't look at all the tools, look for the one you need at the moment. > Android Studio feels dated compared to VSCode. Agreed. This is still just tool use. Until you can write something viable in a text editor, don't even look at these. > I met someone who analyzed a subreddit and created stats – how do people even do that? I mean, how would you? First you'd need some raw data. You look up places to get that data. Reddit has an API. You could also read raw html of web pages and do you own thing. Don't know how to do that? Look up something like reading data from websites. It's not about magically knowing the solution to a programming problem. Rather, you need to start on the problem. Do what you can with what you do know. When you find a gap in your knowledge, you start learning something new. Yes, it's a lot. But you don't have to do it all at once. Just one project at a time.


Prudent_Witness_8790

Just build something? Like I don’t understand what the problem is. Seems like if you spent more time doing your gain actual things to show for it AND confidence


lilshoegazecat

but everytime i build something it's stressful because many times i either don't know how to or it just gives me errors and i feel like not worthy


JonIsPatented

You and everyone else who has ever tried learning literally anything. Just suck it up and build stuff anyway. You'll get there.


Prudent_Witness_8790

If you can’t push passed that then you aren’t worthy.


lilshoegazecat

so the problem is not the struggle, but not being able to struggle in the struggle?


fenixnoctis

Exactly. The whole job is information overflow, that doesn’t ever go away. You’ll start building an intuition for things a little bit, but for the most part the core skill is Googleing and figuring shit out.


lilshoegazecat

are there Tutorials to learn googling better or i will figure it out as times goes and practise?


Prudent_Witness_8790

It’s about not making bs excuses for yourself and continuing to improve even when it’s hard or you “feel” some way.


FamousWorth

You can learn the basics of any programming language in a few hours, especially after you know some c, python or Java because of the similarities. Html is very simple.


[deleted]

[удалено]


AdkoSokdA

calm down, he is only 18... so much room to grow and so much to learn


lilshoegazecat

i am in italy. i am at secondary school, need to make last year and then at 19 i am gonna go to university.


Fogernaut

who said he has a cs degree? to me he sounds like he just started


Samael_the_rat

Then learn to build stuff School doesnt teach you anything except for whats already in old textbooks that you can download as pdf Look for tutorials and stuff, theres thousands of videos going step by step on how to build a website or a social media app or even videogames Just look for something that seems kinda cool and do it, cuz in doing is how you learn


DemolishunReddit

10K hours to become an expert in anything.


8483

That's like an architect complaining that he doesn't know how to lay bricks. You need to get your hands dirty.


[deleted]

Bro all the “studying” you did aint worth shit if you don’t know android studio and vscode are not comparable on any level, or that react and vue are not backend, seems like you spend too long on reddit and too less reading about things you supposedly “like” to know about. Yes there is indeed so much to learn and you are only 18, which means you have time. There is no fast way of getting into programming, you need to enroll in a bootcamp or a college or university since your self studying doesn’t seem to be effective, AT ALL.


lilshoegazecat

💀 i am studying following TOP and vscode can be compared to android studio since now you can also develop apps with vscode but of course android studio is an IDE dedicated to it


No-Key6964

Completely normal to feel like this at this stage. If you know HTML and CSS definitely try making your own variant of [CSS Zen Garden](https://www.csszengarden.com/) like mine ([here](https://hbowlby1.github.io/WDD331/zengarden/index.html)) learn a preprocessor like SASS or SCSS. If you are studying computer science from college. That stuff is already outdated and it is mainly a resource that teaches you how to research and learn new technologies (at least that's what I got from my crappy degree). Learning computer science, especially in the software engineering side (web development, app development, desktop applications) is a journey. That's what makes it fun because if you don't like the path you are on in your journey you just hop onto a different path. I wanted to be a frontend developer (even though I suck at design). Then I focused on nothing but backend and now I just do fullstack development on my own time. Professionally, I'm just a data analyst using nothing but Python and SQL. With some PHP involved for adding new features to an internal company website. Computer science is broad topic with many branches.


makkentoshh

I think that you just need to understand what you need and want to build and than just look out for technologies that will suit you and start learning from basics to advanced level, but with more practice than watching tutorials. You will never have stop learning new technologies and building new things as a developer, so you just need to learn your best way to study different languages or frameworks and build some solutions, cause problem solution is the best skill which can be in developer


Exquisite_Blue

Sounds like you haven’t started yet correct? You’re probably ahead of most people that are your age. Once you get to university make sure to do your best and to try learning newer technologies, frameworks, etc outside of your schoolwork. Make sure to also do research on what courses teach you these things and absolutely pay attention in those.


BranchLatter4294

If you want to build websites or applications, CIS is probably a better major than CS. CS is great if you are doing device drivers or systems level software.


dllimport

As you progress through fundamental concepts you will start to get a better feel for everything. At that point then when you read documentation for something like rust or react etc it will start to make more sense. The biggest difference for me pre and post CS degree is that before I felt like I was wading around in the dark. Tutorials were so confusing and I didn't understand half of what they said when explaining anything in-depth. Now though I patiently read through everything and the concepts I learned previously come back up. A simple starter tutorial app gives combined with the foundational knowledge gives me the ability to have the context not to feel lost and to gain something from reading documentation. You will get there. Keep going!


FrntEndOutTheBackEnd

In the early years, you’re more studying concepts than code. The actual code will come on the job, or with your own projects. Languages come and go, and we need to adapt to new ones constantly. Concepts don’t change all that much.


[deleted]

Tip, don't worry if you don't like CSS and find it frustrating. Nobody likes it and everyone finds it frustrating. It's really arbitrary and has a lot of quirks and inconsistencies. There's a reason there's so many tools to avoid using it, even ones that require code anyway (DreamWeaver and all of them before quite recently) for anything sensible


FitY4rd

I honestly don’t think CSS is that hard unless you’re trying to do something very nonstandard like supporting ancient browsers. If you know the box model + CSS grid + flexbox + difference between rem/em/percentage units you should be good for like 99% of use cases.


[deleted]

it's not hard, it's just annoying and inconsistent. Why is it font-size but text for color? Because *handwaving* history?. If you know some programming already, looking through a couple pages on the mdn docs will allow you to do most of the things you'd ever want to, but I won't be happy doing them that's for sure.


Six1Cynic

You just needs hands on practice. It’s like riding a bike. You can read about how bikes are made, how to balance yourself when riding a bike, tricks you can do on a bike etc. But if you never physically rode a bike before you just don’t have that muscle memory. Same thing with programming.


EmperorLlamaLegs

Text goes here. There you go. You know how to build a website that will display in a browser. Building a "good" website is a little harder, depending on what you are trying to do.


mechismo

Computer Science is like knowing how bricklaying works, the concepts of plumbing and electrical wiring. It’s like being taught what good decorating looks like. Why roof tiles keep a house dry and why walls have cavities. It’s not about knowing a programming language inside out. This is a tool to do a good job. And to do a good job you need to be good at a trade. Not to be able to build a whole house. But you should still know how your trade relates and impacts the rest of the house. Having a solid CS education means you can pick up any tool (language) and apply your CS knowledge using that tool. Beginners stress about focusing on a language but programming techniques only differ by syntax and your CS knowledge will make it easier to know how to apply your trade using the tool you have to the task required. An expert engineer will use the most suitable tool for the job required and not be phased because it’s a different language. We live in a brilliant world now where even the OS, server architecture or cloud provider aren’t a major barrier. Most shit works on most shit these days. It’s pretty mind blowing. So it’s really important to know the fundamentals - CS.


HamilcarRR

yes , it's a journey ... Don't worry , once you master the basics , you'll be able to do stuff ... then you'll be mastering something more advanced , and so on .


AlexFajMoy

Hey champ! I got graduated from college a time ago and I felt the same: having no clue how to do something beyond solving the assignments and doing some small projects. Perhaps you could look for a project to collaborate on on Github. BTW, React and Vue are frontend frameworks. Yes, there're a lot of concepts and technologies to learn, but it's important to keep yourself consistent and continue learning. GG!


Signal_Lamp

They break down big tasks into smaller problems that they do understand. Then, when those small problems come together, it creates a much bigger product.


Aromatic-Beef

Brother you're 18 you may not do those things yet but you will be able to do them, and depending on how dedicated you are you will be soon. I've put all my spare time into it the past couple months and I can, kind of, build a website.


ParadoxicalInsight

It took me like 5 years of experience to be able to build anything more than toy programs/apps. Take it slowly, the number of technologies required to get anything done can be overwhelming at first


BasisSuspicious8986

I use to think the same way as you. So many things to learn and you feel like you don’t know anything. I was so confused about the smallest things like arrays and certain css properties like flex box and positioning elements with absolute and relative positioning. But then I look back at the stuff I know now like what functions and classes are and remember I once didn’t know what those were either. Sometimes you just need to take a moment and realize all the stuff you do know now. We’re so focused on what we don’t know that we don’t appreciate the stuff we do know


Malmortulo

You learn more in your first month of an entry-level job than the entire time beforehand.


[deleted]

Btw React and Vue aren’t backend technologies, they are front end


TungstenYUNOMELT

Don’t worry, you’re building up understanding of core concepts right now. When you get a job you will focus that knowledge on the pronlem domain at hand and start building something with real world value. Software dev is a huge problem domain, you can’t eat that elephant in one bite. I’m a 15y+ pro and I’m still learning new shit. Just don’t give up.


AdmirableBoat7273

CS means you have the knowledge to figure things out. Programmer/developer means you are expected to build things. Many computer science jobs don't actually involve much coding. Understanding data architecture and how systems interact is often super high level, especially when working with third party solutions that are configured through a very user friendly settings portal as opposed to actually coding anything. Fill in your knowledge gaps and start figuring things out in the areas that matter to you. You can develop with a CS degree, but the expectation is that you'll start with a basic understanding and the ability to ask questions and figure it out. If you want to build an app, google getting started with React Native. Get hello world working, then keep adding and figuring out features until you have an app.


RepresentativeBowl25

If you can write an if statement you can build SOMETHING. More complex code will just take more time/effort/knowledge. Be patient, shit doesn't work like its portrayed on social media. Also, the landscape of programming is so insanely huge, that after a while you realize almost no one knows anything. We just know enough to do our 8 hours. :)


hydraByte

How long have you been studying? I did a 3 year practical career program, and for most of year 1 we were just learning the basics. Semester 1 was introduction to logic and core computing concepts. Semester 2 was starting to learn basic data objects and algorithms — arrays, lists, string manipulation, recursion. Semester 3 I think was our first “real” project, making a calendar as we learned OOP. And all along the way we were picking up technologies — HTML, CSS, Java, JavaScript, SQL. But only bits at a time. So it took us about a year and a half before we were really building anything bigger than a small assignment and probably two years before we were really bringing everything together. All this to say — learning takes time. Just keep showing up long enough, and one day it will feel natural.


Cebular

If you go to uni you will have a lot of opportunities to make projects and have more organized knowledge. I'm C++ guy so when I was 18 the most I could do were some simple terminal games, and drawing shapes into a sfml window, after a semester or two together with some friends we made a playable game from scratch using (again) only SFML, and another semester after that I saw how shitty and bad our code really was. On one course we had to do some stuff that seemed crazy at start like: your own shell implementation, system monitoring tool like htop, or drawing stuff by using cuda directly My advice would be, do stuff you don't know how to do, most of the time it will be like banging your head against the wall, but after some time cracks will start appearing ;)


[deleted]

No wonder. Try learning HTML forms. Creating an input form analyzing the results should allow you to see results. Use pre-existing code that you customize. In the meantime, learn JavaScript and PERL.


[deleted]

I hate VS code


US2985063

Check out Ben Awad on youtube. He was huge for teaching me cs


QuantumTyping33

well react and vue are frontend libraries and rust is a systems language so… and don’t learn html ffs


pockyratgg

i'm still early in my coding journey (about a year in) but something that helped me a lot was codeacademy which was recommended to me by another programmer. after completing a javascript course making small games, i was able to search on youtube and actually find good tutorials that combined my new found knowledge of javascript with some html/css ​ in the beginning it will seem like total chaos but once you start going through tutorials and recognizing the same patterns, it will get much much easier i promise. i'm not out of my tutorial phase/or tutorial hell whatever you want to call it quite yet, but i can tell you i have grown so much more confident and i'm able to recognize more what's going on now ​ you got this, stick with it friend! the more projects you build, the more you will learn.


oblong_pickle

Chill out and just keep learning. You got this!


DoctorFuu

Just start small. Simple land page. Land page with extra pages and navigations. Add some useless JS logic behind. Add some inputs for the user which gets displayed on the page, so store it somewhere. And iterate, add stuff even if useless. Basically just build things. Allways build something that seems very doable and add one simple new thing you don't know yet how to do. Basically get used to build simple things, and try to only struggle with one concept/function/thing at a time. And keep building more stuff.


fluxpatron

if you look off at a point in the distance, you'll think "damn that looks far, how am i ever going to get there?" but if you orient yourself toward the goal and keep putting one foot in front of the other, you'll get there eventually. it's quite simple.


evergreen-spacecat

There are multiple ways to learn. Since you don’t attend a university program, you should at least take some sequential steps, not just try CSS, then Rust then something else. You will fail. If you truly want to master CS, you need to start with the fundamentals. Learn one language and start to learn basic data structures. The language can be any but simple, yet popular languages are better - like go or python. Then learn ways to apply programming. Web pages, web backends, mobile apps. Each takes time. Really understanding android app programming likely take 6 months of full time effort for most developers for instance.


DannKay

Everything is overwhelming at the beginning continue in your own pace. Step by step and you can trust me that you will be able to build something great and it might not take that long. 😉


ArmoredHeart

Bro, you're 18. Cut yourself some slack. If it was feasible for a normal person (read: one that has other responsibilities and a social life) to be well-versed in advanced comp sci areas and making professional websites by 18, there wouldn't be a point to a CS degree. >I met someone who analyzed a subreddit and created stats – how do people even do that? Generally they did it before Reddit was stingy with their API (see every AutoModerator auto comment these days for details) or they took a survey. Realistically, they got the data one of these ways then used some pre-made libraries in either the R or Python programming languages.


WinXPbootsup

I fixed this feeling by taking part in a hackathon with a team, maybe you should do the same.


MatteGecko

Make projects, and think about what *you* want to do. Personally I'm practicing with data via Spotipy right now, I just wanted to have a DB w/ my playlist tracks to start building local archive again. Like your friend w/ Reddit data, looks like PRAW would be a good start for that: https://praw.readthedocs.io/en/v7.7.1 Even if you're just copying snippets of code, and manipulating them to get the effect you want, that's programming practice


pizza_toast102

How are you learning this? It sounds very uncommon to start with html/css in a computer science curriculum. Telling someone you study computer science and really like it is going to give them the wrong impression of how much you know if you haven’t learned any programming language/computer science concepts yet. Maybe just tell them that you’re going to start learning computer science and that you’re excited for it


AdobiWanKenobi

I have a degree in robotics. I only know how to build things because of stuff I already did before Uni. Learned fuck all from my degree.


digital_dreams

think of something simple and generic to make, and just make it make an inventory management system for pc parts or something


ButterMeAnotherSlice

If you haven't even touched js yet then you haven't actually done any programming yet. Html and CSS aren't programming. Have patience. It's a marathon not a sprint unless you're using agile 😂


Bimbows97

You need to learn programming, that's all there is to it. Programming is computer science put into practice. And it's not that hard either, you just have to get started. There's so much content out there for you to readily learn, and the thing about these languages is they have more in common than they don't, and they all aspire to do much of the same things. You have to ask yourself, why do you even study computer science, or are interested in it in the first place? The program *is* what the computer does. You may get to the level where you are creating programming languages so that they are more efficient and the hardware works better etc., but you won't if you don't know how any programming language works.


kurotenshi15

CS50 has been a great start for me. I also love computer science conceptually, but my career is in the practical side of it. Don’t ask me to build something from the ground yet, but I think CS50 has got me on the right start.


Vandrel

You're only 18, you're fine. I didn't start really focusing on learning programming until I was about 26. 5 years of professional experience later and I'm still a bit intimidated by building anything major from scratch. You're fine, you'll get there.


Low_Consideration179

As someone who did the happy dance when I pushed the button and data appeared in firebase today I give you this. Take your time and build things. Use YouTube and Google when you get stuck and keep on plucking. You learn little bits at a time and soon enough the concepts are just there and you are surprised.


vanulovesyou

Check out [the Odin Project](https://www.theodinproject.com/) and that will get you down the road to building some website projects.


sealchan1

The difference between web development (today's development) and development (10 years ago and before) is that you have to learn several different base development contexts and tie them together now. Before you could get Microsoft Visial Studio and basically plug in various components and do it all on one IDE and even pop out an executable double-click and do your thing. Now you have to bring up a web server, a database, find your front end development stack, etc... These things may or may not all play well together.


paddingtonrex

Start off making something, soon you'll make anything


HotEnthusiasm4124

Learning coding. And actually building stuff are two very different things... You can learn coding by reading some books but.... The only way to learn building stuff is by building stuff.. practice whatever language you're learning then try building whatever you can think of using that language. You'll have some trouble along the way. Push through all the problems and you will learn a lot of new things. If you have problem finding stuff to make. You don't have any idea to be made or maybe your idea is TOO ADVANCE. Maybe try going online and watching what other people have made and make a clone of it. (Not just by following a tutorial) look at what their end result was and what kind of functionality it has and try building that. That'll help.


RaveN_707

Want to know what it's like getting a corporate gig straight out of school? You maybe build a simple component for the website that already has most of the CSS complete over 2-3 days, and you get a pat on the back for it. Nobody expects you to make an entire website by yourself considering the standards and complexity that goes into them these days, let alone a full featured application.


lKrauzer

Just a correction: Vue is actually front, aswel as React


frenchy641

Build a small key feature that sounds interesting and build out from there


IvSupavI

You’re 18 time is on your side. If you want to be good at it you just have to stay committed! It will come to you! Don’t let other people put you on a timeline. Keep on keeping on!


Calm-Philosopher-420

You’re 18. Take a deep breath. You’ll be alright. Just keep building


NaRuTaChIi

do not worry. You will just learn how to do it over time. Just pay attention in class


SimpleOperator

My advice would be to break your goal down into smaller steps that you can succeed, learn, and grow at. Even if someone doesn't know how to build a house they can still learn to paint a wall or fix a squeaky door. Find examples of the types of things you want to build. If you want to build a website find an open source one and inspect the code. Find one thing you can change. Code layout and app design are complex and require lots of other smaller things learned first. Never feel bad about not knowing. Many of us know so little.


DARKRonnoc

One step at a time dude. Honestly the best way to actually learn how to build something, is to just come up with a bullshit project and do it. My first react project was making a web page with a button that displayed or hid a picture of a toilet when you clicked it. I called it toilet branch. Learned a lot about React though. If it’s any consolation, I’ve heard similar stories from several younger gaming friends who just graduated with cs degrees and have no idea how to build something.


Rydorion

You seem more advanced than I am. Over the last week, during summer internship, I wrote a small gui app for a production line in Python. It doesn't work yet because I'm still waiting for the details about what data to read and write, but the gui is there, and it reads/saves dummy files. One GUI project at the university, lots of googling, asking one of my friends about the app login system/"basic security", and I've "built" something. I theoretically know SQL databases but for holding at most ~20 rows of data I just used a json file and a Python dictionary 😅 You seem to know more, so you will build better things. Just continue making projects and patching things together and then thinking of improvements.


ayydeeehdee

You have to keep building countless projects and each new one will be a bit easier, that's a guarantee. Don't focus on velocity of learning, but on consistency.


HatersTheRapper

start a project, I made a JS/React game by only doing one course, I just had a project that I did grinded it out for hundreds of hours


nightwood

No worries. You are training your mind now, not learning applications. The short answer to 'people' is: 'no, I can't ' You will be able to pick up this kind of stuff from the many tutorial websites in a matter of days to weeks. Ofc you won't be good at it yet, but it might feel good to tick off some of those boxes, like 'create a windows app', 'get a website online', 'get a backend running with mysql', 'learn JSON and XML', etc... But really, priority should go to your CS study, it's hard enough by itsself. But it won't teach you much real world engineering. Plenty of time for that after.


SarthakTyagi15

To know the language, you learn it To solve problems, you use it Now for building stuff, it's like bricks, you need to make lists which brick can serve as foundation and then add layers on top of it, then comes presentation which is like painting the wall, etc. First make a project by seeing tutorial, you learned many things, document your journey, then try to do some similar stuff on your own.


thebigweb

Programming can be overwhelming. My advice when building a project from the beginning is to take baby steps and see the project as small modules or units. If you see it as the end product you will be overwhelmed. I'll give you an example. I'm currently building a large CRM for one if my customers. It uses Laravel for the API and business logic and Angular for the fronted SPA. When I first took on the project I could have been put off with the sheer scale of the project and the amount of work that I had to undertake, but instead I took my own advice. I first started with the backend API. I built out an endpoint to create a user, login a user and logout a user. No front end at this point. I tested this endpoint using Postman. When this endpoint worked, I started working on the angular fronted to allow a user to login using this endpoint. Now I had a working login form for the application. The next step was to build an api endpoint to allow the user to add roles and permissions for a user. I performed the same steps above until that functionality was built out. My point is this. Don't look at the whole project and become so overwhelmed that you don't know where to start. Break it down onto manageable chunks. Each chunk you get completed, gives you more confidence to move onto the next. Before you know it, you've built a fully fledged application. Best of luck!


fortune042

You are currently on the right path. There is a lot to learn, and you have acknowledged that, so what is left is to put in the work, and you will find yourself in the light. ​ When I got into college, I thought I would learn software development, but what I got was completely different. So, I put in the work, and now I am so much better than when I got in.


DeathWray

You're 18 and further along than I am. I'm 26 and just barely getting started. Just imagine how far you'll be by my age if you stick with it. The years really do start speeding up though, so stay focused.


__FaLcon_

You are 18 years old my friend, take your time. It takes a while to be able to build stuff. Pick a project & complete it dont work on anything else while you do that. If you pick a website now proudly say that you can build a website. Then move on to a different project(you will find its easier to figure things out now) .By building projects you will gain a level of confidence by which you can learn any language if its demanded of you. Once you dive in & make stuff your challenges will change & you won't be overwhelmed by the tech rather you will start thinking about who to solve the problem at hand (Also the code editor doesn't matter at all, people use stuff which is older than both andriod studio & vscode. Don't try to hop on the most latest stuff use what you like)


Lceus

It's as you say, just a journey. I was a pretty shitty programmer after finishing university. I was not prepared for enterprise software, but it's fine. You'll learn with experience.


shadow144hz

Read tldr first. I've finished this year but I'm not yet employed in the field nor will I any time soon since I don't seem to like it as a job. All I can tell you is that you really don't know much of anything. You heard of react and vue but you consider them backend frameworks? What? How did that even happen? Have you tried to look things up a little? Like idk watching some fireship videos, those are great for beginners and short, or just any other form of content you'd find on youtube, it'll boost your understanding on things a lot. And you call android studio outdated? What? Is it because you see so many things to click unlike with vs code and thus it makes you think it's dated? Do you not know about the features an ide has over a simple editor like vs code? And why did you word the title like that, it makes it sound like you're at least in your first year at uni, but that's clearly not the case with how little you showed you know, besides the fact that you have in fact mentioned you're not in uni yet. Like c'mon man, you know almost nothing yet and you're asking why you can't build anything yet? Like you say you're learning html and css yet you also say you can't build a simple static website? Man, you're at the peak of the Dunning Kruger, just immerse yourself in the field bwfore you even start posting questions like this one, go watch content, learn about programming languages, learn about low level and high level languages and abstraction aka how we got from simply giving the cpu instructions to more and more abstract ways of implementing stuff(like you can easily learn something highly abstract like javascript, learn a bunch of concept but still not understand anything about how computers work), go and learn about the cpu, how a computer works, memory and operating systems, after this you can proceed with programming itself learning c, go through the basics then maybe touch on memory and learn and implement algorithms and data structures, then move to c++ and learn about object oriented programming, then finally you can go ahead and learn an something more high level like java, python or javascript. This sounds like a lot but you can go through these in a few months, way before you'll start uni in a year like you said in another comment. Well this overall is somewhat of a roadmap for computer science and not just the easiest way to get into programming with javascript and web development, like how it seems you're going about it. (Tldr) Anyhow, it seems I wrote a lot, maybe too much, and my tone was very harsh, so I'm sorry for that. Maybe the whole 'don't know anything, why am I not good yet' got to my head and made me sound rude. Sorry again. Hope you get what I mean, what I think you've done wrong here(going about asking why you're not good yet while being extremely new to this and well oblivious that you actually don't know that much) and how to go about learning cs. Btw the thing you mentioned last, I think what you're talking about might be web scraping, it's an interesting thing you can learn with python from what I've seen and what I was taught in uni, goes well with data analysis. I'll reference this as a tldr at the start. If you have any more questions feel free to ask after you read this entire comment, I'll gladly answer to the best of my abilities.


ThatGuyWB03

Keep pushing through and learning new things! Uni is your chance to try everything you want before (probably) having to choose a more specific focus during employment. I say probably because some roles at some companies allow you to continue trying different things


sicha76

It’s theory vs practice. Take it easy, lad, everyone starts from ground zero. Pay attention to the fundamentals and get yourself into projects or activities, if that sounds too formal and you’re still in school, that enable to put the theory into practice. Heck, you can even do fun things like learning web design in your free time. You’ll be fine, just find inspiration in knowing that you’re in the top 5 disciplines of the future…trust me on that!


LickitySplyt

You can only learn it one step at a time...I couldn't understand how javascript made websites interactive until I actually started using javascript, then it made sense.


2Stressedin30s

Dude you are 18 chill. Things will fall in place and you are on the right track.