@@rorymax Not what I meant. Working in the industry only made me like web development less, I still love programming. I was referring to nostalgia. Learning the complexity of programming was such a frustrating but rewarding process. Plus, I learned as a kid during middle and high school and we all have childhood/teenage memories that seem happier than they probably were. That's all, I still get to do really cool stuff :)
@@bedtimestories1065 I get what you mean, It's like when you first trying to get that girl's attention it feel so exciting until you and that girl became couple and found out than you don't really like her, it became a little bit boring, not generalizing every couple out there though.
Great categorization. I think we can add another level after capstone level, which is 'Solving Real Problems' Which means that if someone worked on a clone project, he/she can work on some customization for this project to deliver it as a real solution for some potential customers, even for free to get some good experience in CV. For instance, an e-commerce clone project can be customized for a local grocery in the neighborhood.
Thanks Andy. You're very inspirational to me. In my case, I've only built one single capstone project which take me a lot of time and effort, but it's all worth it. Now I'm working as a full time developer.
Informative video, my personal opinion is that once you go past the simple projects it is better to develop fewer projects while going very in--depth than trying to create many different ones. By in-depth I don't mean a large scope and a billion features, but take your time to think about the architecture and perhaps educate yourself with design patterns and see if you can fit at least one in. Most importantly, DO take your time to go over best practices to do certain things, even if it's something you can already code blindly - go and check how it can be done in different way, look over common approaches and see which ones you want to adopt. Understanding design and best practices is super important especially if you are going to try and land a job in the future - and when you do talk about your experiences dont mention your To Do List, it doesn't have to be a capstone project as long as we have taken the time to learn design/best practices in an intermediate project so you can elaborate further. Good luck.
This video earned my subscription! Great job breaking it down and giving direction and concrete examples on where to start, what a roadmap from "easy" to "highly complex" projects looks like, and benchmarks to check your progress! Keep up the good work!
For a list of examples of every type of project, head over to this link on GitHub: github.com/andysterks/three-levels-of-projects Also; have you considered liking and subscribing? If not totally cool...just maybe go on up there or use this handy link to subscribe: ruclips.net/channel/UCZ9qFEC82qM6Pk-54Q4TVWA
Currently, I´m building a Booking Appointment App for a Doctor's Clinic as my Capstone project. I´m really struggling because I´m working beyond my comfort zone. Based on the MERN stack, I plan to sell the project to a small Doctor's Clinic or a Beauty salon in my city. I plan to position myself in a popular place to be noticed as a self-taught Developer, with an ability beyond the average. I hope these every sleepless night brings its reward.
This helped me out so much I've done 10 low level projects and I feel so much more confident gaining a strong foundation . I'm now moving on to intermittent projects.
You can also start with simple project, improvise that to intermediate and further make it cap stone level. You can combine multiple simple & intermediate projects to make it a composite cap stone project.
This is pretty encouraging. I'm a fresh (24yo) IT networking technician with just a little bit of dev background "for fun", but mostly overall IT basic stuff knowledge. I got into a new job 4 months ago. I'm doing very well and I'm now in charge of many tasks that aren't supposed to be technician level, like managing my company's active directory (users, GPO, DNS and whatnot). I kept asking for more and more responsabilities and projects because I thrive to learn more and I was put in charge to create an application to automate the search, creation and modification of AD Users in the AD, including creating custom proprieties on the user objects do that we can use it with PowerBI to do some data analysis. I just finished it today after 2 weeks of work, 3 versions of the program. ~650 lines written in Powershell with a user friendly UI, the ability to filter users in the AD by any propriety (name, OU, groups, IpPhone, Location etc...) and other cool features, IMO. All of that said because this project rly sparked my interest for programming again and here I am looking for projects on my free time. Now that I got my basics covered in Powershell (already know SQL, AutoIT, C and a tiny bit of php, css, html as well) I think I wanna get started with Python and JS and some of your projects definitely spark my interest and ticking tgose boxes.Thanks for this awesome video!
Greetings @thesunryze4658 I feel motivated by your comment. I am a student software engineer but I am passionate in system administrations and reading from you shows u already have an advanced knowledge and experience working as one. Please I need help and advice on the roadmap and path to follow. I just enrolled for a course on coursera systèms administration and infrastructure management. Please I you kindly will i can reach out to you via email. Thank you
I think the capstone projects really improve skills, I have done like a few and every time I am finishing I look at the code I have written in previous project and want to improve/refactor it - because I have learned something as a programmer (unfortunately my perfectionism and sometimes laziness stop me from finishing fully a project)
They are the hardest to finish by far. The last 10% is so tedious to go through but it's the part that we of the app where we are weakest in knowledge/understanding (so it's important to get through).
perfectionism can be a problem for developers, i haven't finished a lot of projects because of this. what i've learned is to just release projects even if they are not 100% finished. then with input from your users you can make it perfect along the way.
I got my fist job as software engineer just a month ago, without a degree, but I am working with it for over 10 years now. I had 2!!! projects wich gave me the job, so that is really the sweet spot if you ask me. But 1 tip if you really want to get a job, don't just build a "test project" but try to make something usefull. my first project was some small administration software for the company i worked for. I told the owner i wanted to create it for free to test my skills, and if it would be usefull he could use it. now its being used for 2 years and it's perfect for your portfolio. project 2 was a webshop for myself, just to test my skills, not for profit. after 1 month of developing i had a live webshop wich solds way more products then expected. these 2 projects gave me the first job as software developer. but please don't just make test projects, try to make them work as if they are going to be used. you won't regret it!
I've been learning on my own for almost 2 years. I created a mobile app for tracking packages for e-commerce and all that, and now I'm doing a web app for the employees of the company I work for (private security). But I want to quit a be a developer full time for other company. Still I feel like I don't know enough to be hired as a developer. 😑
I think one thing a lot developers miss when it comes to a career journey in coding is to try and look for opportunities in Professional Services first. The bar is very step in Product Development teams and get your nose wet in professional services is a great way to get experience and work your way up.
I tried doing this in java, I got somewhat far but it still isn't functional. I made the mistake I think of trying to use universal collisions for all my pieces? Any tips for line clearing and collision logic?
You'd be amazed how easy it is. A good dev could build a BASIC twitter clone in a weekend. The difference between a basic clone and the real deal is, handling scale, and ui/ux. And of feature set.
Also, real important is to handle asynchronous request and how to handle millions of records each time to be processed. Real world scenarios is to work with a file, load info into database, present group key info in web browser, then request a processed data into a file/report and these reports.
As the main project for this semester in my CS degree we are building a Search Engine that searches through documents and ranks them by similarity to the query and by popularity. It's not super-advanced but it is pretty good and functional. I'm only half way done now and I've put in 15-20 hours weekly for a month and a half now. Do you think that's a decent resume project, even though it's part of the curriculum?
@Gooby123 true, but apparently it's worth it when you get in. Keep in my mind, the supply does not meet the demand! That's one of the reasons it pays so well.
I think sometimes a lot of people down play this aspect of getting hired as a programmer. For me, coming from IT it was easier to build on the knowledge I already had working with computers and other people in the tech world. But even then, I’m 6 months into my job as a web developer and still feel like there’s a ton of stuff I don’t know. I can only imagine what it would be like for someone coming from a different field and trying to fit in with a development team and not feel out of place.
I disagree. I think you need to build projects with databases and CRUD functionalities in order to become programmer. Building of calculator and Hello World always is a waste of time. Start from very small project with databases with insert and getAll functionalities and then move to projects with login, nice GUI, 10sql tables and insert, delete, getbyId, update functionalities. You should know two things : how to build projects with databases and how to build projects which can get data from internet using REST APIs. Calculators and alarm - waist of time
The one thing I always hear a lot is “I don’t know what to make” or “ I wanna practice but I don’t know what to do.” You can make anything, it’s easy to come up with something. Anyone who is serious about programming can think of anything. Any small project you can do is still practice and counts. I learned networking in c++ and in Java. The fundamentals of a programming language are just that the fundamentals. I made a small game for my kids in Java to help them learn letters. Once I started more and more ideas were coming to me on what to add. At a certain point yes it’s better to have ideas given, but the amount I hear it and the way I know the people are, your not even trying and you just want to magically have something built or even the knowledge on programming.
This was genuinely helpful. Defining the tiers like you did really makes sense. Now I know to look for projects that don't require libraries, focus on the syntax. Then once I'm comfortable with that, move on to using libraries to do bigger things. Of course, I want to learn Rust. And my understanding at this point is that almost anything beyond printing a line requires a library of some sort.
I haven't looked for a job for the last 23 years or so but when I was applying back in the day, I brought an example program that I wrote which was a C++ version of Space Invaders.
Thanks Andy for the great video, I'm a Hardware engineer with a lot of PCB design experience, and decided to switch my career to software. I'm in week 2 the exploration phase. Keep up the good work!
I've just finished my first capstone which was sort of like webtoons but I wouldn't say a clone. I learned so much in a relatively short space of time, not just building the app itself but hosting it on cloud servers and debugging. It's now what I'm most proud of as it shows good database integration for populating pages as well as a custom cms system for publishing content. I'm ready to move on to my next project which I'm still working out what to do between a couple options and the only advice I think I could give to someone starting out on a capstone is to just make a start. Some days there's bugs/issues that you just really don't want to deal with but just start and try to get a bit done even if you don't manage multiple hours of work.
Can I see your webtoon like project? Just for inspiration, I really like manhwa, webtoons and manga and thinking of making projects about this in the future.
@@brianhambre3649 I wouldn't be able to atm due to NDA related stuff. If you'd want I can go over the tools I've used to get it up to where it is, that'd give a starting point at least.
I still have my Intro to Computer Science Projects from College, they didn't have any UI whatsoever (besides terminal prompt), but after the third project, they are all well above 1000 lines of code, last one was 2,132 lines of code. (All build in Java)
I have an addition to the "capstone pyramid", there is a place beyond the capstone, which is solving problems that real humans actually are facing. Which in terms of programming means, build something that solves a problem for someone out there, and either make it open source, or try to monetize it somehow.
For my micro controller class, I did a breakout game. Not only the game, but also showing it on a display (those small nokia ones) and programming the controls in a matrix pad.
Okay so I made an app in swift where you can put in the time you slept last night and the time you woke up and store that as an entry things this app does: 1. calculate the time slept 2. get the average time slept of the last seven days 3. graph the time slept of the last seven day 4. keeps all this data stored in a firestore database 5. has authentication to keep track of users 6. presents all of your entries in an easy to read list 7. allows users to easily delete entries they may not want 8. uses swift and google and firebase libraries and frameworks 9. is around 812 lines of code would this fit more under capstone category or intermediate category? I know it's a relatively common project Idea but I'm curious what this would fit under. I'm thinking somewhere in-between but more towards the intermediate side
Thank you so much for sharing your knowledge! I liked the idea to mesure the complexity of a project by its functionalitys. Thats an objective criteria everybody would agree with.
Wow i feel confident about my skills now when you said Tetris is challenging because I've done it before in C# and i must say that I also felt like giving up due to the bugs that i ran into,
I actually have the reverse issue. I've been programming since my early teen years. at the time I did it for fun, and never really looked into loading libraries, I actually went through a face were I thought that using other peoples code was cheating or lame. I don't think that way now, but I do find myself struggling to use libraries like react, or other frameworks. I've been using laravel for a couple of weeks now and I really enjoy it, but it's definitely different from what I'm used to.
when I originally started my project for my degree, I thought it was a simple project. Listening to your video I've realised it's slightly more complex, somewhere between intermediate to capstone. All I know is it's exiting, and driving me nuts at the same time.
I wanted to build a checkbook register for tracking expenses. With a flat database and single monetary transactions per entry it was an intermediate project. Adding the ability for split entries with multiple transactions per entry brought it up to capstone level.
Sincerly, you cannot fail your choice, work in something that you are keen on even if it is difficult. If you are writing like 1E0000000000 lines of code probably your are not learning to code but you are a big tech company maintaining something like RUclips or Amazon.
it's such a nostalgia to remember how i felt when i first began programming . This channels been inspirational . it was all rinse and reapeat and once fundamentals were cleared i had to build common sense in the art of coding , i finally reached the stage of learning mid fundamentals , most projects after that was just googling and copy and paste others code that you do really have grain understanding . Oh yea! really loved the tetris portfolio, built one myself it was not easy honestly, took me months to understand the concepts , the bitter process actaully rewarded me with building more games such as minesweeper and snake game as they all implement same features, Sudoku solver is also something thats crossing my mind . Oh and yea , even after all this cant discredit the importance of how much useful it is to read other peoples code , you stop reading and you cant improve , i came this far as reading peoples code pays rich dividends .
Where do you usually read them? Where do you have access to read other drvelopers code besides the usual googling? I am curious, i am new to web development/ programming realm. Thank you.
Build like 3 simple apps.. then dig through github.. learn how to run apps, learn how to read the code and see what the functionality is, play with the code, try make it do different things, add different functionalities
Those of us who always start making Capstone apps😂. I once was assigned to get room rates of competitors (hotels). 1) I made a JS/html link generator. It saved me time. 2) I was assigned to send an email to the day’s s checked out guest. Lot of repetition. Solution: Vb6 app which listened for a specific window tittle then send key presses and pasted the contents of a text file in the email body. Implementation: ctrl + E … automation…. Repeat. What took 30 mins was cut down to about 4. All that being just a Front Desk clerk and night Auditor.
💡 Levels of projects crucial for programming success 00:46 Start with simple projects to gain experience Focus on projects that demonstrate problem-solving abilities Progress to more complex projects to showcase skills 💻 Importance of problem-solving and project building in programming education. 01:45 Learning syntax and control flow statements are essential for problem-solving in programming. Breaking down projects into smaller parts, debugging, and analyzing code are crucial aspects of becoming a proficient programmer. Focus on building a moderate number of projects with basic functionality rather than adding complex features. 💻 Characteristics of intermediate programming projects: multifunctional, limited lines of code, minimal library use. 03:35 Intermediate projects typically involve five or more functions. A general rule is to keep the code under 500 lines to avoid transitioning to a higher project level. Intermediate projects should have minimal reliance on libraries or frameworks. 💡 Significance of Capstone Projects in Demonstrating Programming Skills 05:03 Capstone projects showcase ability to perform tasks expected in a role They typically involve implementing 10 or more functionalities 💡 Strategic project selection is crucial for career advancement in programming. 06:44 Focus on building 1-3 attention-grabbing projects for your resume and portfolio. Capstone projects require the most time investment compared to other types. Consider starting with one project, testing the job market, and then building a second if needed.
I remember my 1st quarter of software dev at a community college many years ago, my end of quarter project was building a calculator app, I failed miserably.
For some reason, I feel like I know at least where to start with most intermediate projects mentioned, but not simple UIs mentioned like the to-do list 😭
I feel like your capstone projects example are more time consuming than the intermediate ones but require more simpler skills. I can see a lot of people that would easily be able to make an instagram clone but would really struggle on a simple Tetris or Space Invaders clone
The only thing I disagree with is the small projections should not be used with any frameworks. I use my ToDo project to test out and play around with new frameworks all the time by creating multiple branches off the main branch. The reason I love using my ToDo app to test new frameworks is because it gives me pre-built CRUD functionality out of the box and is ready to go and test the framework.
Just found your channel. I've been doing this for about a year. After beginning in Python for like 5 minutes, switching and learning a bit of C++. Stopping and coming back 10 times at least. Then. Switching to HTML. Basics done. Then CSS and HTML. Then went back to C++ and understood it a bit. But then switched to Javascript. Then Back to Python. And suddenly, something clicked. Using python now, idk, the logic through and through just sticks now. MY POINT IS IVE BEEN LOOKING FOR A CHANNEL JUST LIKE THIS. Omg my life would have been so much easier. XD Luckily, all the struggling ends up being worth it, too. =P
I am new to programming. I learned C++, C and now I am learning Python. But I'm not sure how to create something like this using these programming languages. The only projects I have done so far was simple projects, like FIFO, LIFO, sorting algorithms, solving equations. And these programs could only write a few things to a window, or possibly to a text file. So how to do these projects? Are these websites or some applications? And what skills do you need to do something like this?
Before i write this comment i would like to say that my english is not that good. I an currently building a speedometer for my bicycle using react, app has those features: Real time speedometer Lean angle Rpm meter Mileage Speed warnings Lean warnings Music player Real time digital clock Option to turn off/on some of those options for better view. In which category would you put my project, it is my first project and i spent 7 days building it.
I am currently making a full stack e-commence app. I have the back end for a simple chat app, and when I mean simple I mean the user enters their chat name and the room they want to join. I plan on building the front-end using React or some sort template engine such as mustache. Would this be a good project to add to my portfolio?
Great thanks to you, I believe that you are one of the most reliable and useful person in this platform. Let me ask something, what about building some projects by watching vidoes, copy his/her code, get the idea about what is going on in each line????
2 года назад+3
Hey Andy! Thank you for the tips. As someone who started to learn programming many times, and usually stopping because of having no idea how to build the projects I had in mind, your video helped me realize that the problem was most likely that I was thinking too big. For the simple projects, you showcased some examples, which used some basic GUI. From what I've seen so far, this would require learning some kind of windowing or web library / framework to achieve. However, you said we shouldn't use libraries or frameworks. Could you expand on this part? I assume you meant that we shouldn't learn a library or framework extensively at this point, just some of their most basic functionality.
"This is good enough" at 2:22 😂 Oh my! You had to work to make that look that bad. 😂 As a designer, I'm so glad you said that because there is NO WAY I would have let something look that bad. But now I'll put in a bit less effort in the design/style department.
any level of these projects require a library for to do list like using flask, for the gui using tkinter for games pygame, for the milestone project need front and and backend..
We had a project in my university, that made us create a digital circuit on a breadboard, and the circuit would be made from a txt file. So I would type the gate type, column, input 1 and 2 and the output,and I'd get the result. That could give me any circuit I wanted. Of course first I had a class for every gate.
Dope content Andy! I totally agree with those projects and the level of complicity. I'm a developer for my company that just uses html and css, so I'm currently on my javascript journey learning to build websites with features so I'm more familiar with the language while at the same time building them out so I'm growing as a developer applying my knowledge or researching my solution never the less I'm growing either way so I can be job ready in the industry as a javascript developer.
@@kidbrave_7673 I have actually. I applied to like like 2-3, got nothing. I did just get hired for a backend position Monday, although I’m front end guy. Would rather much prefer front end, but they are training me for backend. I’m just glad for the professional experience.
@@jkli14 First off congradulations that's a huge win bro!! What's your tech stack, also can I see your portfolio? I could review it and email you my perspectives if you're trying to work as an email developer. I saw you saying you applied to 2-3 companies and that's solid, but I applied to at least 50-100 companies to finally land this job, as you know in tech theres so many companies looking for devs and alot of those companies get inspiring devs or one's that only know the very basics on the web and then they throw their hat in the ring, so if you still want to work at a front dev. I can definitely help you with a review and my industry expertise on the industry. However, let me ask this would this current role for this company be your first job?
Portfolio is pretty simple. I would def prefer to do front end. I’m literally doing the complete opposite of what I pretty much been teaching myself on and off for the last 3 years 😂😂
Honestly, it doesn’t matter what you build. Machs nix. It only matters that you build something. Anything. Nobody gives a fu*k what it is, just finish it, or abandon it and start another one. Keep doing this until you finish a project. It’s ok to struggle and become frustrated. That’s perfectly normal. Just push through it or practice your “Would you like fries 🍟 with that?” saying 🤦🏻♂️
Jokes on you, I built a bot that asks if they would like fries with it! #Automated Seriously though, that's great advice. Ultimately the way you get better at programming is...programming. Sounds obvious but people get lost in the weeds of endless tutorials and books. They have their place but you learn most by trying to build stuff and solving problems that come along with that.
I'm a bit late to this video, but i believe it would be great to know the thought process on how to start each project. As an example, building a calculator, what program/language do you choose to build it in and most importantly why? Would you do it in phyton exclusively or would you choose something else? Im gonna check out your channel entirely to see if you already posted the answer to my question, but if not, it would be a great help. I find that the most difficult thing is choosing/building the correct setup before even starting coding
My project was for shits and giggles. I programmed a drone to follow my car about 1' above it and behind it. I dressed it up as a ghost. Did this for Halloween.
I've finished Business-informatics faculty in my university, where I've learned C#. After graduation, I was doing my own ecommerce store. Now I'm learning python, and my first test project increased order processing speed x9 times in real online shop where my gf works. Like her productivity increased from processing 10 orders per hour, to 90. They had more than 500> orders(80-120 usd average order price) without invoices. Now they re processing them all in time What my programm is doing: - taking orders from CRM using API - Creating orders in Wise Transfer for clients using web automation(selenium+webdriver), and then recording links for each order in database - then records wise payment links from database to CRM cards. - sending emails to clients using CRM API. I feel that this programm is more about integration, reading documentation and using appropriate modules. It solves business problem but not including too much theory, algorithms I've learned in university. How do you think what level of project it might be? I tend to call it as simple/middle level for my portfolio, is it correct evaluation?
Meanwhile i just finish my study and trying to get a job as soon as possible so i make a project to build a social media app for mobile apps with zero idea how to do it. End up just manage to do like the design and able to apply some part of it, login and register part only.
As a professional dev, I miss these days sometimes... Learning software development via building anything I wanted was such a blast after school.
the way you say this makes it sound like you don’t get to build whatever you want 🥺🥺 you still have fun making things right? 🥺🥺
then do it
@@rorymax Not what I meant. Working in the industry only made me like web development less, I still love programming. I was referring to nostalgia. Learning the complexity of programming was such a frustrating but rewarding process. Plus, I learned as a kid during middle and high school and we all have childhood/teenage memories that seem happier than they probably were. That's all, I still get to do really cool stuff :)
@@bedtimestories1065 I get what you mean, It's like when you first trying to get that girl's attention it feel so exciting until you and that girl became couple and found out than you don't really like her, it became a little bit boring, not generalizing every couple out there though.
@@jan5504 bro you've got issues lol
Great categorization.
I think we can add another level after capstone level, which is 'Solving Real Problems'
Which means that if someone worked on a clone project, he/she can work on some customization for this project to deliver it as a real solution for some potential customers, even for free to get some good experience in CV.
For instance, an e-commerce clone project can be customized for a local grocery in the neighborhood.
Thanks Andy. You're very inspirational to me.
In my case, I've only built one single capstone project which take me a lot of time and effort, but it's all worth it. Now I'm working as a full time developer.
what was your project
Informative video, my personal opinion is that once you go past the simple projects it is better to develop fewer projects while going very in--depth than trying to create many different ones. By in-depth I don't mean a large scope and a billion features, but take your time to think about the architecture and perhaps educate yourself with design patterns and see if you can fit at least one in. Most importantly, DO take your time to go over best practices to do certain things, even if it's something you can already code blindly - go and check how it can be done in different way, look over common approaches and see which ones you want to adopt.
Understanding design and best practices is super important especially if you are going to try and land a job in the future - and when you do talk about your experiences dont mention your To Do List, it doesn't have to be a capstone project as long as we have taken the time to learn design/best practices in an intermediate project so you can elaborate further.
Good luck.
This video earned my subscription! Great job breaking it down and giving direction and concrete examples on where to start, what a roadmap from "easy" to "highly complex" projects looks like, and benchmarks to check your progress! Keep up the good work!
Can we give a round of a applause for this good info?! 👏🏽👏🏽👏🏽
Thanks so much for breaking this down! It's taken me months just to get a straight answer to this question - much appreciated!!
Made 1 capstone and 3 projects between Intermediate and Capstone.
Thank you for this video Andy
For a list of examples of every type of project, head over to this link on GitHub: github.com/andysterks/three-levels-of-projects
Also; have you considered liking and subscribing? If not totally cool...just maybe go on up there or use this handy link to subscribe: ruclips.net/channel/UCZ9qFEC82qM6Pk-54Q4TVWA
Currently, I´m building a Booking Appointment App for a Doctor's Clinic as my Capstone project. I´m really struggling because I´m working beyond my comfort zone. Based on the MERN stack, I plan to sell the project to a small Doctor's Clinic or a Beauty salon in my city. I plan to position myself in a popular place to be noticed as a self-taught Developer, with an ability beyond the average. I hope these every sleepless night brings its reward.
It's now 2024 how was the project, hope you overcame it.
So how it's going, did it work out?
This helped me out so much I've done 10 low level projects and I feel so much more confident gaining a strong foundation . I'm now moving on to intermittent projects.
You can also start with simple project, improvise that to intermediate and further make it cap stone level.
You can combine multiple simple & intermediate projects to make it a composite cap stone project.
This is pretty encouraging.
I'm a fresh (24yo) IT networking technician with just a little bit of dev background "for fun", but mostly overall IT basic stuff knowledge.
I got into a new job 4 months ago.
I'm doing very well and I'm now in charge of many tasks that aren't supposed to be technician level, like managing my company's active directory (users, GPO, DNS and whatnot).
I kept asking for more and more responsabilities and projects because I thrive to learn more and I was put in charge to create an application to automate the search, creation and modification of AD Users in the AD, including creating custom proprieties on the user objects do that we can use it with PowerBI to do some data analysis.
I just finished it today after 2 weeks of work, 3 versions of the program.
~650 lines written in Powershell with a user friendly UI, the ability to filter users in the AD by any propriety (name, OU, groups, IpPhone, Location etc...) and other cool features, IMO.
All of that said because this project rly sparked my interest for programming again and here I am looking for projects on my free time.
Now that I got my basics covered in Powershell (already know SQL, AutoIT, C and a tiny bit of php, css, html as well) I think I wanna get started with Python and JS and some of your projects definitely spark my interest and ticking tgose boxes.Thanks for this awesome video!
Sounds like you already have the skills to be working as a top paid engineer. Hope you are been well compensated.
Greetings @thesunryze4658 I feel motivated by your comment. I am a student software engineer but I am passionate in system administrations and reading from you shows u already have an advanced knowledge and experience working as one. Please I need help and advice on the roadmap and path to follow. I just enrolled for a course on coursera systèms administration and infrastructure management.
Please I you kindly will i can reach out to you via email. Thank you
The best advice I received on how to select projects based on knowledge and experience.
Thanks dude
Thanks Andy, i now realise what I’ve been doing wrong all this time, I will start these apps immediately (thank goodness you published this video).
I think the capstone projects really improve skills, I have done like a few and every time I am finishing I look at the code I have written in previous project and want to improve/refactor it - because I have learned something as a programmer
(unfortunately my perfectionism and sometimes laziness stop me from finishing fully a project)
They are the hardest to finish by far. The last 10% is so tedious to go through but it's the part that we of the app where we are weakest in knowledge/understanding (so it's important to get through).
perfectionism can be a problem for developers, i haven't finished a lot of projects because of this.
what i've learned is to just release projects even if they are not 100% finished. then with input from your users you can make it perfect along the way.
@Alek Wolf Are we living the same life? lol.
@Alek Wolf This could have been my comment
same lol
I got my fist job as software engineer just a month ago, without a degree, but I am working with it for over 10 years now.
I had 2!!! projects wich gave me the job, so that is really the sweet spot if you ask me.
But 1 tip if you really want to get a job, don't just build a "test project" but try to make something usefull.
my first project was some small administration software for the company i worked for. I told the owner i wanted to create it for free to test my skills, and if it would be usefull he could use it. now its being used for 2 years and it's perfect for your portfolio.
project 2 was a webshop for myself, just to test my skills, not for profit. after 1 month of developing i had a live webshop wich solds way more products then expected.
these 2 projects gave me the first job as software developer. but please don't just make test projects, try to make them work as if they are going to be used. you won't regret it!
Congrats on landing that first gig!
I've been learning on my own for almost 2 years. I created a mobile app for tracking packages for e-commerce and all that, and now I'm doing a web app for the employees of the company I work for (private security). But I want to quit a be a developer full time for other company. Still I feel like I don't know enough to be hired as a developer. 😑
everyone, follow this guy's example.
Can you share your projects
@@leoMC4384 you most certainly do my friend. I got my first gig with less knowledge than you, from what you’ve said. If you can, go for it!
I think one thing a lot developers miss when it comes to a career journey in coding is to try and look for opportunities in Professional Services first. The bar is very step in Product Development teams and get your nose wet in professional services is a great way to get experience and work your way up.
This
I actually wrote Tetris in C recently, it was a lot of fun and has definitely been a nice touch on my resume!
Hello, can you please, say, how many interviews are you being invited to after sending how many resumes?
I tried doing this in java, I got somewhat far but it still isn't functional. I made the mistake I think of trying to use universal collisions for all my pieces? Any tips for line clearing and collision logic?
Me: "how to become a web-dev"
RUclipsr: "just build Facebook, LinkedIn, Amazon and you should be ready for junior position. "
You'd be amazed how easy it is.
A good dev could build a BASIC twitter clone in a weekend. The difference between a basic clone and the real deal is, handling scale, and ui/ux.
And of feature set.
Also, real important is to handle asynchronous request and how to handle millions of records each time to be processed.
Real world scenarios is to work with a file, load info into database, present group key info in web browser, then request a processed data into a file/report and these reports.
As the main project for this semester in my CS degree we are building a Search Engine that searches through documents and ranks them by similarity to the query and by popularity. It's not super-advanced but it is pretty good and functional. I'm only half way done now and I've put in 15-20 hours weekly for a month and a half now. Do you think that's a decent resume project, even though it's part of the curriculum?
That's a great project yes. I would rate this higher up on the scale because the algorithm "does" a lot and is not trivial.
Heck yes
Did this in 1998 as my Master Thesis. Yes it's good.
Did you publish it? Or does anyone know of any similar tool?
@@BakrAli10 fzf with ripgrep has a nice interface too if you dont mind one more package
Been watching a lot of your videos from my homepage the past few weeks. Great content bro. Subscribed
Welcome aboard!
Becoming a paid "programmer" seems so complicated. It seems like one has to know SO much to just get a job. This isn't the case in many other careers.
@Gooby123 true, but apparently it's worth it when you get in. Keep in my mind, the supply does not meet the demand! That's one of the reasons it pays so well.
I think sometimes a lot of people down play this aspect of getting hired as a programmer. For me, coming from IT it was easier to build on the knowledge I already had working with computers and other people in the tech world. But even then, I’m 6 months into my job as a web developer and still feel like there’s a ton of stuff I don’t know. I can only imagine what it would be like for someone coming from a different field and trying to fit in with a development team and not feel out of place.
Highly disagree
@@tichalagaming7853 OK, but why?
@@tichalagaming7853 what’s your tips/POV?
yet another phenomenal, informative video! love seeing these pop up in my feed :)
Thanks Sam...much appreciated :-)
I disagree. I think you need to build projects with databases and CRUD functionalities in order to become programmer. Building of calculator and Hello World always is a waste of time. Start from very small project with databases with insert and getAll functionalities and then move to projects with login, nice GUI, 10sql tables and insert, delete, getbyId, update functionalities. You should know two things : how to build projects with databases and how to build projects which can get data from internet using REST APIs. Calculators and alarm - waist of time
Definitely agree. Most of the real world applications uses crud
Fully agree. It's hard to think of useful software that doesn't have some sort of persistence.
The one thing I always hear a lot is “I don’t know what to make” or “ I wanna practice but I don’t know what to do.” You can make anything, it’s easy to come up with something. Anyone who is serious about programming can think of anything. Any small project you can do is still practice and counts. I learned networking in c++ and in Java. The fundamentals of a programming language are just that the fundamentals. I made a small game for my kids in Java to help them learn letters. Once I started more and more ideas were coming to me on what to add. At a certain point yes it’s better to have ideas given, but the amount I hear it and the way I know the people are, your not even trying and you just want to magically have something built or even the knowledge on programming.
This is exactly the video I needed; thanks!
Glad I could help :-)
This was genuinely helpful. Defining the tiers like you did really makes sense. Now I know to look for projects that don't require libraries, focus on the syntax. Then once I'm comfortable with that, move on to using libraries to do bigger things. Of course, I want to learn Rust. And my understanding at this point is that almost anything beyond printing a line requires a library of some sort.
I haven't looked for a job for the last 23 years or so but when I was applying back in the day, I brought an example program that I wrote which was a C++ version of Space Invaders.
Thanks Andy for the great video, I'm a Hardware engineer with a lot of PCB design experience, and decided to switch my career to software. I'm in week 2 the exploration phase. Keep up the good work!
I've just finished my first capstone which was sort of like webtoons but I wouldn't say a clone. I learned so much in a relatively short space of time, not just building the app itself but hosting it on cloud servers and debugging. It's now what I'm most proud of as it shows good database integration for populating pages as well as a custom cms system for publishing content.
I'm ready to move on to my next project which I'm still working out what to do between a couple options and the only advice I think I could give to someone starting out on a capstone is to just make a start. Some days there's bugs/issues that you just really don't want to deal with but just start and try to get a bit done even if you don't manage multiple hours of work.
Really motivating brother, can i find a way to contact you i am a UX/UI Designer. We might do something together in the future 🥰.
@@yahiaelidrissi7214 my plate is pretty full at the moment sorry, hope you can find a good collab partner!
Can I see your webtoon like project? Just for inspiration, I really like manhwa, webtoons and manga and thinking of making projects about this in the future.
@@brianhambre3649 I wouldn't be able to atm due to NDA related stuff.
If you'd want I can go over the tools I've used to get it up to where it is, that'd give a starting point at least.
@@gingerbeargames Yes, that would definitely help me thanks.
Thanks for the tips Andy! Very handy ones!!!
Glad you like them!
I still have my Intro to Computer Science Projects from College, they didn't have any UI whatsoever (besides terminal prompt), but after the third project, they are all well above 1000 lines of code, last one was 2,132 lines of code. (All build in Java)
this was really useful for me as i was really getting stuck doing this
Really glad to hear this. It comes up a lot for people :-)
Thank you for the this video. People just starting out usually lack direction. Horrible situation to get out of. This helps
I have an addition to the "capstone pyramid", there is a place beyond the capstone, which is solving problems that real humans actually are facing. Which in terms of programming means, build something that solves a problem for someone out there, and either make it open source, or try to monetize it somehow.
For my micro controller class, I did a breakout game. Not only the game, but also showing it on a display (those small nokia ones) and programming the controls in a matrix pad.
Great advice!!
Meanwhile somewhere in asia : every project must be capstone project, otherwise you fail 😅
Lol...thank you :-)
Thanks Andy. Great advice. This helps me a lot. Im a beginner in web develepment and I am trying to land my first job.
Okay so I made an app in swift where you can put in the time you slept last night and the time you woke up and store that as an entry
things this app does:
1. calculate the time slept
2. get the average time slept of the last seven days
3. graph the time slept of the last seven day
4. keeps all this data stored in a firestore database
5. has authentication to keep track of users
6. presents all of your entries in an easy to read list
7. allows users to easily delete entries they may not want
8. uses swift and google and firebase libraries and frameworks
9. is around 812 lines of code
would this fit more under capstone category or intermediate category? I know it's a relatively common project Idea but I'm curious what this would fit under. I'm thinking somewhere in-between but more towards the intermediate side
This breakdown of projects helps. Thank you for this video .
Thank you so much for sharing your knowledge! I liked the idea to mesure the complexity of a project by its functionalitys. Thats an objective criteria everybody would agree with.
Wow i feel confident about my skills now when you said Tetris is challenging because I've done it before in C# and i must say that I also felt like giving up due to the bugs that i ran into,
I actually have the reverse issue. I've been programming since my early teen years. at the time I did it for fun, and never really looked into loading libraries, I actually went through a face were I thought that using other peoples code was cheating or lame. I don't think that way now, but I do find myself struggling to use libraries like react, or other frameworks. I've been using laravel for a couple of weeks now and I really enjoy it, but it's definitely different from what I'm used to.
I really needed this man thank you so much I've been stuck for a year, idk what to do as a beginner. I don't know what projects to make.
when I originally started my project for my degree, I thought it was a simple project. Listening to your video I've realised it's slightly more complex, somewhere between intermediate to capstone. All I know is it's exiting, and driving me nuts at the same time.
I wanted to build a checkbook register for tracking expenses. With a flat database and single monetary transactions per entry it was an intermediate project. Adding the ability for split entries with multiple transactions per entry brought it up to capstone level.
Sincerly, you cannot fail your choice, work in something that you are keen on even if it is difficult. If you are writing like 1E0000000000 lines of code probably your are not learning to code but you are a big tech company maintaining something like RUclips or Amazon.
Thanks for the break down and for the link to list many examples that helped a lot
it's such a nostalgia to remember how i felt when i first began programming . This channels been inspirational . it was all rinse and reapeat and once fundamentals were cleared i had to build common sense in the art of coding , i finally reached the stage of learning mid fundamentals , most projects after that was just googling and copy and paste others code that you do really have grain understanding .
Oh yea! really loved the tetris portfolio, built one myself it was not easy honestly, took me months to understand the concepts ,
the bitter process actaully rewarded me with building more games such as minesweeper and snake game as they all implement same features, Sudoku solver is also something thats crossing my mind .
Oh and yea , even after all this cant discredit the importance of how much useful it is to read other peoples code , you stop reading and you cant improve , i came this far as reading peoples code pays rich dividends .
Where do you usually read them? Where do you have access to read other drvelopers code besides the usual googling? I am curious, i am new to web development/ programming realm. Thank you.
@danse en rouge much appreciated. 👍
Build like 3 simple apps.. then dig through github.. learn how to run apps, learn how to read the code and see what the functionality is, play with the code, try make it do different things, add different functionalities
very useful video and this is what I am looking for in the last while, keep on posting such great videos.
you really dropped some gems in this one!
Excellent breakdown of the different types of projects to make while learning Wed Dev.
Thanks for this too the point vid. Your the first person who has done this.it really helped me thank you soo much . I subscribed aswel .thanks bro
Those of us who always start making Capstone apps😂.
I once was assigned to get room rates of competitors (hotels). 1) I made a JS/html link generator. It saved me time.
2) I was assigned to send an email to the day’s s checked out guest. Lot of repetition. Solution: Vb6 app which listened for a specific window tittle then send key presses and pasted the contents of a text file in the email body. Implementation: ctrl + E … automation…. Repeat.
What took 30 mins was cut down to about 4.
All that being just a Front Desk clerk and night Auditor.
💡 Levels of projects crucial for programming success
00:46
Start with simple projects to gain experience
Focus on projects that demonstrate problem-solving abilities
Progress to more complex projects to showcase skills
💻 Importance of problem-solving and project building in programming education.
01:45
Learning syntax and control flow statements are essential for problem-solving in programming.
Breaking down projects into smaller parts, debugging, and analyzing code are crucial aspects of becoming a proficient programmer.
Focus on building a moderate number of projects with basic functionality rather than adding complex features.
💻 Characteristics of intermediate programming projects: multifunctional, limited lines of code, minimal library use.
03:35
Intermediate projects typically involve five or more functions.
A general rule is to keep the code under 500 lines to avoid transitioning to a higher project level.
Intermediate projects should have minimal reliance on libraries or frameworks.
💡 Significance of Capstone Projects in Demonstrating Programming Skills
05:03
Capstone projects showcase ability to perform tasks expected in a role
They typically involve implementing 10 or more functionalities
💡 Strategic project selection is crucial for career advancement in programming.
06:44
Focus on building 1-3 attention-grabbing projects for your resume and portfolio.
Capstone projects require the most time investment compared to other types.
Consider starting with one project, testing the job market, and then building a second if needed.
I remember my 1st quarter of software dev at a community college many years ago, my end of quarter project was building a calculator app, I failed miserably.
For some reason, I feel like I know at least where to start with most intermediate projects mentioned, but not simple UIs mentioned like the to-do list 😭
I feel like your capstone projects example are more time consuming than the intermediate ones but require more simpler skills. I can see a lot of people that would easily be able to make an instagram clone but would really struggle on a simple Tetris or Space Invaders clone
Thank you so much! This video brings more clarity I really needed
The only thing I disagree with is the small projections should not be used with any frameworks. I use my ToDo project to test out and play around with new frameworks all the time by creating multiple branches off the main branch. The reason I love using my ToDo app to test new frameworks is because it gives me pre-built CRUD functionality out of the box and is ready to go and test the framework.
Great video! This was the exact video i needed and was looking for, thank you so much!
I needed it. Thanks for sharing.
Of course…glad to help 😃
Thanks for putting this video Andy, was very helpful.
This video will be very useful for me in a couple of months. Thanks!
I think the content of this video is amazing! I'm building an api now together with a website and app.
Someone struggling with ADHD..you soo much inspire me
Just found your channel. I've been doing this for about a year.
After beginning in Python for like 5 minutes, switching and learning a bit of C++. Stopping and coming back 10 times at least. Then.
Switching to HTML. Basics done. Then CSS and HTML. Then went back to C++ and understood it a bit. But then switched to Javascript. Then Back to Python.
And suddenly, something clicked. Using python now, idk, the logic through and through just sticks now.
MY POINT IS IVE BEEN LOOKING FOR A CHANNEL JUST LIKE THIS.
Omg my life would have been so much easier. XD Luckily, all the struggling ends up being worth it, too. =P
I am new to programming. I learned C++, C and now I am learning Python. But I'm not sure how to create something like this using these programming languages. The only projects I have done so far was simple projects, like FIFO, LIFO, sorting algorithms, solving equations. And these programs could only write a few things to a window, or possibly to a text file. So how to do these projects? Are these websites or some applications? And what skills do you need to do something like this?
Before i write this comment i would like to say that my english is not that good.
I an currently building a speedometer for my bicycle using react, app has those features:
Real time speedometer
Lean angle
Rpm meter
Mileage
Speed warnings
Lean warnings
Music player
Real time digital clock
Option to turn off/on some of those options for better view.
In which category would you put my project, it is my first project and i spent 7 days building it.
That's the best video on that subject. Thank you kindly.
Dude, seriously, top shelf presentation, thanks!! 👊😎
This is really good and answered a lot of questions I had. Thank you.
I am currently making a full stack e-commence app. I have the back end for a simple chat app, and when I mean simple I mean the user enters their chat name and the room they want to join. I plan on building the front-end using React or some sort template engine such as mustache. Would this be a good project to add to my portfolio?
Sure! Just make sure it does very well what you claim it will do.
What language are you using ?
This was the video. This is the clarity
Great thanks to you, I believe that you are one of the most reliable and useful person in this platform.
Let me ask something, what about building some projects by watching vidoes, copy his/her code, get the idea about what is going on in each line????
Hey Andy! Thank you for the tips. As someone who started to learn programming many times, and usually stopping because of having no idea how to build the projects I had in mind, your video helped me realize that the problem was most likely that I was thinking too big.
For the simple projects, you showcased some examples, which used some basic GUI. From what I've seen so far, this would require learning some kind of windowing or web library / framework to achieve. However, you said we shouldn't use libraries or frameworks. Could you expand on this part? I assume you meant that we shouldn't learn a library or framework extensively at this point, just some of their most basic functionality.
I think it's just html+
Good looks brother you got me going there... I have 3 capstone
@andy sterkowitz
You have absolutely no idea how helpful this was, I really had no good concept of how to prove and accurately rate my usefulness🙏🏽
Glad it helped! :-)
"This is good enough" at 2:22 😂 Oh my! You had to work to make that look that bad. 😂 As a designer, I'm so glad you said that because there is NO WAY I would have let something look that bad. But now I'll put in a bit less effort in the design/style department.
That's the way. I haven't done any yet but I can sense it.
any level of these projects require a library
for to do list like using flask, for the gui using tkinter for games pygame, for the milestone project
need front and and backend..
We had a project in my university, that made us create a digital circuit on a breadboard, and the circuit would be made from a txt file. So I would type the gate type, column, input 1 and 2 and the output,and I'd get the result. That could give me any circuit I wanted. Of course first I had a class for every gate.
Great advice! Thanks!
thanks you man your advices is in the right time
“Which project should I build?” Easy, build a project which chooses a project for you to build
Dope content Andy! I totally agree with those projects and the level of complicity. I'm a developer for my company that just uses html and css, so I'm currently on my javascript journey learning to build websites with features so I'm more familiar with the language while at the same time building them out so I'm growing as a developer applying my knowledge or researching my solution never the less I'm growing either way so I can be job ready in the industry as a javascript developer.
you got a dev job just using html and css ?
@@jkli14 Yea have you heard of email development or html developer?
@@kidbrave_7673 I have actually. I applied to like like 2-3, got nothing.
I did just get hired for a backend position Monday, although I’m front end guy. Would rather much prefer front end, but they are training me for backend. I’m just glad for the professional experience.
@@jkli14 First off congradulations that's a huge win bro!! What's your tech stack, also can I see your portfolio? I could review it and email you my perspectives if you're trying to work as an email developer. I saw you saying you applied to 2-3 companies and that's solid, but I applied to at least 50-100 companies to finally land this job, as you know in tech theres so many companies looking for devs and alot of those companies get inspiring devs or one's that only know the very basics on the web and then they throw their hat in the ring, so if you still want to work at a front dev. I can definitely help you with a review and my industry expertise on the industry. However, let me ask this would this current role for this company be your first job?
Portfolio is pretty simple. I would def prefer to do front end. I’m literally doing the complete opposite of what I pretty much been teaching myself on and off for the last 3 years 😂😂
Wow this was a really good video! Thanks bro.
Honestly, it doesn’t matter what you build. Machs nix.
It only matters that you build something. Anything. Nobody gives a fu*k what it is, just finish it, or abandon it and start another one. Keep doing this until you finish a project.
It’s ok to struggle and become frustrated. That’s perfectly normal. Just push through it or practice your “Would you like fries 🍟 with that?” saying 🤦🏻♂️
Jokes on you, I built a bot that asks if they would like fries with it! #Automated
Seriously though, that's great advice. Ultimately the way you get better at programming is...programming. Sounds obvious but people get lost in the weeds of endless tutorials and books. They have their place but you learn most by trying to build stuff and solving problems that come along with that.
Great start and then you put this last "fries" sentence, so lame and offensive..
I want to learn how to make any project using database
I'm a bit late to this video, but i believe it would be great to know the thought process on how to start each project. As an example, building a calculator, what program/language do you choose to build it in and most importantly why? Would you do it in phyton exclusively or would you choose something else?
Im gonna check out your channel entirely to see if you already posted the answer to my question, but if not, it would be a great help. I find that the most difficult thing is choosing/building the correct setup before even starting coding
This was very helpful, thank you so much!
This was a great video Andy
2:31 thanks for free smile laughted a bit
Cheers! :-)
My project was for shits and giggles. I programmed a drone to follow my car about 1' above it and behind it. I dressed it up as a ghost. Did this for Halloween.
Is this supposed to be funny?
@@kristinaf5135 only to people with a sense of humor
I've finished Business-informatics faculty in my university, where I've learned C#. After graduation, I was doing my own ecommerce store.
Now I'm learning python, and my first test project increased order processing speed x9 times in real online shop where my gf works.
Like her productivity increased from processing 10 orders per hour, to 90. They had more than 500> orders(80-120 usd average order price) without invoices. Now they re processing them all in time
What my programm is doing:
- taking orders from CRM using API
- Creating orders in Wise Transfer for clients using web automation(selenium+webdriver), and then recording links for each order in database
- then records wise payment links from database to CRM cards.
- sending emails to clients using CRM API.
I feel that this programm is more about integration, reading documentation and using appropriate modules. It solves business problem but not including too much theory, algorithms I've learned in university.
How do you think what level of project it might be? I tend to call it as simple/middle level for my portfolio, is it correct evaluation?
thank you for the tips im trying to be a web developer so thank you for the idea
Meanwhile i just finish my study and trying to get a job as soon as possible so i make a project to build a social media app for mobile apps with zero idea how to do it. End up just manage to do like the design and able to apply some part of it, login and register part only.