From the FAQ in the sidebar: Where can I find practice exercises and project ideas?
There is no way around writing code from scratch if you want to move beyond the beginner stage. It's normal to feel stumped and blocked, and usually people then go and take yet another course, but that keeps them in the same place.
Start small, as small as you need. If a text-based Hangman game is too hard for now, do a temperature converter. Then expand on it: Add other conversions to it and let the user pick. Make a GUI for it. Log the conversions made into a file. Or write a 6-of-49 lottery number generator. Then add functionality that each set of numbers must be unique if the number of sets allows for it. Add a GUI. Or do a simple to-do list. Simple functionality first (title, body, create, completion toggle), add saving and loading, add unique ID for each note, add dynamic filtering, add sorting, add exporting, add image support when you have done a GUI for it, and so on. If it's something you have a use for, even better!
The hardest part is getting started. It may be helpful to plan a program first on paper or in some piece of software. Use pseudo code or flowcharts. This will give you some structure and force you to think about what you'll do. Then code. It doesn't need to be perfect or look super snazzy, it just needs to work. You can optimize or re-write it later.
Problem sites like Edabitare great for warming up, but don't spend all your time solving isolated problems because that will still not teach you to build something from scratch.
I think it's just a good illustration of the basics, concepts, and some ideas for how to use Python. I don't think that book is enough of an education to create bad programming habits.
It IS a great place to start however.
Use it to learn the basics and then develop your bad habits with deeper learning. ;-)
After you finish ATBSWP I think this is a great resource to practice. After you solve each challenge you can see how other people solved it. That feature actually gives you really good examples of nice efficient code practices.
I am currently learning Python (started about 2 months ago) while working a more than full-time job, though I am not new to programming. I use SoloLearn on my phone to practice and study when I have a few odd minutes throughout the day. I took the Automate the Boring Stuff class on Udemy for $10 and doing Colt Steele's course on there currently at night after work. I play around with the challenges on edabit.com and a few other places to reinforce what I have been learning, especially list comprehension.
There's a website called edabit with a ton of exercises for Python (and many other languages), classified by difficulty level. I think people that are registered can submit new ones.
> Lets say I wanted to create a website with Python that was only for me and linked to my Instagram, and every time I post a new picture on the Instagram app the website automatically updates as well. HOW would I go about doing that? I’ve heard “just google it” but I don’t even know WHAT to google.
That's probably an indication that after only 6 days of programming, that's maybe too ambitious of a task for you for now.
Try looking at problems from places like http://projecteuler.net, http://www.rosettacode.org, or https://edabit.com/challenges/python3 (or may others) and start solving problems.
These kinds of things will give you problems that you can "just build" until you develop enough competence and confidence to tackle problems you come up with on your own.
What's your view on political stuff like this? https://edabit.com/challenge/HXsSRtx83xj7K94dW
I don't really take a stance on US politics since I don't live there, but it feels kinda malplaced to have such questions (regardless of what political motive) on a programming site. Makes it feel a bit unprofessional imo.
I really hope some people find this to be a fun tool. I spent a little over five months building it by myself.
Before anyone asks, yes, the backend currently supports other languages! Specifically:
Once I’ve smoothed out the rough edges and squashed some bugs, I’ll begin working on rolling other languages out. Also, the challenges right now are rather easy BUT the system allows anyone to publish their own challenges. So if you want harder/more challenges, by all means please help out! :)
For JavaScript check out https://edabit.com/explore - I created it, it's a free resource and it teaches you to think like a programmer via interactive challenges. Codecademy is basically an interactive book (and not a very good one at that). That being said, it's fine for learning the syntax but nothing beyond that and in my opinion, a better option for basic syntax is to pick up any JavaScript 101 book.
edabit.com for a nice range of problems to solve. It also gives you links to documentation/resources that are relevant to what you are solving and also shows you what other people have submitted as answers.
Shamelessly going to add my own project to your list. An issue I've always had with coding "game" related sites is they really go overboard on making it "look" like a game. I've implemented sound game mechanics in my project while not looking like something a kid would play.
Also, going to check out vim adventures. Always wanted to learn vim.
Hey, I would suggest to practice as soon as you learn something. Are you able to do so? You can find some practice questions here : https://edabit.com/challenges/javascript
And honestly don't worry, it takes way more than 2 weeks to master JS 😅
Build something.
Do you often do something tedious in your life? Automate it.
See a library/framework that looks interesting? Make something with it.
Maybe you made a simple command-line program before, try to make a GUI for it.
On top of building something, do a few practice challenges everyday.
>we're onto recursion and I need to practice it
https://www.geeksforgeeks.org/recursion-practice-problems-solutions/
I’m a massive fan of eDabit and feel as though it’s much more welcoming towards beginners. I’ve been learning JS for about 3 months and just cracked into React, but hackerank, leetcode and eDabit are my favorites for algorithm challenges/practice
After a super quick google search,
in general just look up "programming challenges". just because a prompt is for python or some other language doesn't mean you can't program it in c++
I feel this is a side effect of taking (too many) courses where the learner "codes along" or only does exercises that require a few lines of code that were shown immediately before. This gives the illusion of having more knowledge or skill than there actually is, and it creates frustration when you sit down to write code of your own and just can't, because you think you should be able to do this.
I think when you take a course and there was a lecture with sample code or a sample project, ask yourself if you can recreate that code or project. If you are positive, write it. If you can't, don't continue with the chapter or lecture thinking that it will eventually fall into place if just learn more. It probably won't. Go back and do the material again. Once successful, try to repeat writing the code again a day or two later, to make sure you don't operate from memory but understanding. This makes learning a bit slower, but it really helps to learn material properly.
Try to think of little scripts or programs that you might have a use for. Or make your own exercises based on the material covered in the course. Engage with it, try to really dominate the subject before you learn more. Come back to the exercises a few times across multiple days.
You could also try manageable problems, like the ones at Edabit. The "very easy" problems there largely really are very easy, so they are a good starting point.
I found codewars too tough (specific requirements, obscure algorithms, make sure you don't modify the original data in any way, you have to do it THIS way to pass, etc.) as a beginner. I much preferred edabit.com, which started easy (it sorts the exercise by challenge level), goes as fast as you can, and reinforces several important concepts, while providing links to appropriate reading material online.
​
Yes. I like this one myself. It let's users solve the challenge however they please, and then shows you popular solutions after you've solved it. There's also /r/dailyprogrammer which seriously doesn't get pimped enough on here. There's also ProjectEuler
I feel that solving problems on sites like Edabit is always a good exercise.
It makes you think about (and re-think) solutions, search the documentation, and google for resources. It's an activity that stretches your mind and can get you into unfamiliar territory, which benefits your experience. Sometimes people get overly fancy with solutions, but that doesn't have to be a bad thing, either. Above all, it can be a lot of fun and gets you coding even if you have no specific project ideas. It's sometimes easier to solve problems or complete a given task/objective than to start a project or work on one. Coding challenges can get you unstuck and smaller problems are great for warming up.
The only downside I see is that they can also be distractions and tools of procrastination, especially when people get competitive about ranks and levels, but still, it's much better than playing video games that scratch the same itch.
I am just posting a link to this site that I recently came across that, since my main job doesn't involve coding, I can stay in shape doing these exercises. (It's kinda like duolingo but for code). I hope you enjoy as much as I do!
you can learn from freecodecamp.org any coding language you want to, and you can improve your coding skill from codewars or edabit.com (for web development coding challenges)
Maybe try looking up coding assignments/projects on the internet. There are a ton and can be as simple as to creating your own math methods to reading a text file and outputting all the words and how many times they occur in the file.
Maybe check out these: * Edabit * Daily Coding Problem
Once you start getting the hang of building programs from scratch, you can start to do more complex things from scratch like edge detection.
Keep it simple. I would highly recommend not starting a project.
Get on a google hangout, discord (or whatever), use a site like edabit and both work on the same problem separately without discussion.
Start with "very easy", give yourselves 5 minutes to complete the problem. Then share your answer with each other and explain how and why you got to your solution.
The key is no googling allowed. If you're both unable to solve the problem then work together including researching how it could be solved. Try not to look up "how to ....", instead look up available native methods for arrays, objects or whatever the problem entails.
If you both get the answer quickly, discuss how your solutions could be improved.
If you knock those out too easily, move up in difficulty and adjust the time. Rinse & repeat. If you can't complete "very easy" without research then you don't know the basics. GL!
https://edabit.com/challenges/java I’ve found that this website provides a bunch of challenges that are fun to figure out. You are able to check solutions from other people to see how they have done it so you can improve your own code. All in all, it’s a pretty good website, and I think it would be helpful to you as much as it has been to me.
I go to the website Edabit for leetcode problems. I've found that it's much less intimidating than some of the other leetcode sites out there. Its range of difficult goes from Very Easy ("Return the sum of two numbers"
) to Expert ("Permutations of an Expression"
).
The easy problems are the way to ease you in. Some problem sites, like Edabit, have a resources section for each problem that often links to specific parts of the documentation and that will help you out.
By the sound of it, you struggle with the logic part. Doing easy problems helps improve it, over time, if you do work on them and don't copy code. A book I feel would also help you here is "Starting out with Programming Logic & Design" by Tony Gaddis. It uses pseudocode, so it is not language-specific. It is very accessible and intended to be used before or during an intro course.
Attention span is something to work on. Meditation may help here, as will discipline and maybe video gaming detox.
I'd suggest the JavaScript course by Andrew Mead on Udemy. Since it's a dedicated course, not an "all-in-one" course, it goes more in depth and spends more time on fundamentals.
You could also take a look at the very easy and easy problems at Edabit.
I had a great time learning on edabit.com for free. The challenges were presorted in order of difficulty, and almost all of them had good reading links that taught me how to research Python on my own. The challenges are small enough that you can squeeze them into the spare spaces between your other activities. (So you can run through edabit challenges at your own pace, while still working on your other training.) When taken all together, the challenges did a great job of reinforcing different concepts. It's really hard to argue with the free cost. Edabit even has a "tinker" link where you can try your own Python code online, so you aren't just limited to the challenges as presented.
I recently transitioned into software development myself. When I first started working on enterprise grade code it was a little overwhelming. I had been writing code for a few months and making apps, but the sheer mass and complexity of the new environment had me dazed. I think it's completely normal to be frustrated with your own apparent lack of progress, but it's important to remember that these skills won't be acquired overnight.
Because some of the code you are working with at the company might not feel very accessible right away, I would recommend doing some easy practice challenges to become a little more familiar with the language and build some confidence. edabit.com has a lot of code challenges for beginners in c++
If you know OOP stuff then read Clean Code by Robert C. Martin for good coding style.
Learn WPF and MVVM pattern and... well.. code stuff! You can't learn with just reading about stuff. Even trivial things can help you to become better programmer.
Maybe a TV series database client?
Do you know a program called "Total Commander"? Make a copy of it. Just without freaking clicking 1, 2 or 3 every time it starts running.
You do not have to invent a wheel in your project. Pick an application and copy it. Yes, there might be topics which you are not familiar with, but hey, using google is also a sign of being a good programmer.
If you are bored you can solve coding challenges on sites like https://edabit.com/.
https://edabit.com/ ! It's like Codewars for beginners :) It start from things like make a function to add two numbers, then last element in a string, reverse string, etc. etc. It also has a resources tab that links you to MDN pages (for JS) for the methods that you will probably want to use for each challenge.
edabit.com has python exercises that can be completed quickly to give you a good idea of how things work. Doesn't take a lot of time, so you can complete one whole challenge, and move onto something else, and come back to a new short Python challenge later. (Caveat: The easiest Python challenges are quick and short. As they get harder, you can expect to invest more time.)
I have really enjoyed the challenges on edabit.com.
You still have to go out and research the details on how to get the challenges done, but it provides links and discussions.
I’m an INTP and created https://edabit.com for learning how to code. It currently supports JavaScript, Python and Java. Once you know the very basics you’ll be able to complete some of the “very easy” challenges. Give it a try.
Take the position and learn to code in your free time. There are tons of options and they're better than bootcamps. Check out https://edabit.com and http://jsforcats.com to start. Full disclosure: I created edabit, but it's completely free.
Cool! just created a challenge … EDIT: another and another. I'm really enjoying this :)
I can relate to your position. To someone learning their first programming language, its always an insane incline. Keep exploring learning paths till you find one working for just You.
Hang in there. Baby steps. Walk before you try to run.
You didnt mention where you are learning JS from, but go to https://edabit.com/challenges , select Javascript, select 'Very easy', try out some of those challenges. See how many you can solve. The ones you cant, go back and learn those topics again till you do.
Seriously, loops are hard! What was really difficult for me to understand was using callbacks in conjunction with loops. After I kinda understood using callbacks within a loop, I started to do some beginner tests on edabit
Took what felt like forever but it really did help my understanding and confidence.
It's okay to take a break. We all need rest. Good luck!
I’m sorry you’re so frustrated. First things first, take a deep breath! Programming can be extremely rewarding but also very frustrating and confusing.
I would start with a “for” loop. General structure being:
For (initial condition, end condition, increment).
Google “for loops MDN” and read through that page (SLOWLY, and don’t skip over paragraph even if it’s boring. Read out loud if you need to).
There’s many different kind of loops in programming/JS, the one I mentioned is good because it’s clear what’s happening and gives you a lot control.
What are you stuck on/what have you tried?
Try this website as a resource: https://edabit.com/challenges/javascript (it has categories so you can select “very easy” difficulty and “loop” topic)
Hi there, apologies for the delay on the response I was quite busy.
So I have managed to find a site with small sort of challenges to put in practice your language skills
hehem. https://edabit.com/challenges
So at the moment I have switched to the Practical Learning rather than just reading a theory book.
Issue with this is that sometimes I find myself a bit "assuming too much" when it comes to learn new things by just duckducking them. But I have choosen this and see how far I can go, then come back to the theory book to understand what the hell I was really doing.
The project I'm into is about creating MIDI and OSC tactile interfaces. Open-Stage-Control . https://openstagecontrol.ammd.net/
These guys they have created such a beautiful tool, and when it comes to MIDI implementation, I think I can help a bit on that.
Start doing stuff with the things you know.
I'm not sure if the community has already decided which exercises are great and which are bad, but from a quick search:
w3resource and edabit look okay on a very quick glance.
Someone has shown you the toolbox: this is a screwdriver, here you can see how I've used it to loosen a screw. That one, we call a spanner, keep an eye on the #10 (more on that later).
The challenge is not to remember all these things, but to use them.
Here’s a book to get you started https://nostarch.com/cppcrashcourse
Or if you prefer video tutorials: https://youtube.com/playlist?list=PLfVsf4Bjg79Cu5MYkyJ-u4SyQmMhFeC1C
And a nice website which will give you practice programming problems: https://edabit.com
Ahhh yes. For a while I was stuck on loops and didn’t understand them either. So I would say just doing them over and over again is the best way. Make your own scenario where a while loop is used. Then make a list of anything and iterate through it.
Also https://edabit.com/challenges/python3 this site here has tons of super easy Python problems, loops included. Going through here did wonders for my confidence and helped me see what I was doing wrong when I was going through it.
Start on the internet. edabit.com will allow you to use their online interpreter, so you just work with Python code directly on their website. You can fiddle around with installing it later, after you have decided you really want to be in this world.
Seconding his suggestion. My only complaint so far is the lack of exercises for practice. I'm thinking of doing codewars on the side. Edit: Found this as a recommendation on the C# discord https://github.com/karan/Projects edit 2: also https://edabit.com/challenges/csharp
I always recommend edabit.com as a starting point.
To keep things interesting, I also recommend learning how to make graphics work, so I would push a PyGame tutorial and at the same time, learn to build user interfaces with PySimpleGUI.
I would suggest these sites for practice instead of codewars for beginners. Once you feel comfortable with basics, you could try codewars
https://edabit.com/challenges has some quite easy practice problems; change the language dropdown on the left to Python, and pick some (needs a free signup to submit answers on the site). They go as simple as testing if a number is even or odd, adding two numbers, doing simple calculations, and up from there.
If you're looking for a way to challenge yourself with some of the basics I recommend edabit.com.
I honestly learned quite a more more just solving challenges than I ever did watching tutorials. When I was first getting started with JS I found that the majority of tutorials were done by two kinds of people: experts who loved using an excessive amount of jargon and technical terms (unnecessarily I might add), and people who barely knew what they were talking about and were essentially just reading a transcript of someone else's tutorial.
That being said, there are some great courses on udemy...but personally I found just teaching myself was more effective. In order to complete those challenges on edabit you will have to read the documentation and that, to me, is the best way to actually learn.
Good luck with everything!
I started learning JavaSript since this year, January. I have bought a few courses on JavaScript on udemy. I bought courses on JavaScript by Colt Steele, Andrew Mead.
By going through the courses I was able to understand the concepts of JavaScript somewhat well, but I struggle when it comes to coding project alone. I also did some coding problems on codewars.com and edabit.com, , the coding problems were challenging but I was able to do them.
The main problem I have is that I do not know how to structure a project nor approach it. But if someone told me what to do I would understand even though I may struggle at first.
Sir, what do think I should do?
I went through ATBS in March/April as a complete beginner. It gives you a good understanding of what you can do with python. If nothing else, it kept me interested and gave me the motivation to keep going. There was a lot of just mindless following along. That's partly on me. I left it not really understanding how to write and understand things for myself, so I started doing challenges through sites like Python Practice and Edabit. I quite enjoy doing them and I feel like I'm actually learning how to read and write python code.
Back to ATBS, one complaint I do have is that some of the exercises, or rather Al's approaches are no longer valid. There is an exercise on web scraping an Amazon product page for prices, but the instructions did not work. I think Amazon may have modified their html to prevent web scraping. I had to do some additional research and eventually abandoned scraping amazon for wikipedia. Doing additional research isn't a bad thing at all and is encouraged, but as a complete beginner, I felt some of the extra steps were beyond my scope.
Literally completed my first dive in to Python today myself with an extensive look at functions etc.
I've just looked at Edabit and while it doesn't look like full projects. There are many user submitted challenges from beginner to advanced on there. I can't vouch for it just yet but I'm having fun with it.
Another approach would be looking at some code you can find online and see what you can and can't understand. I found that even after a couple hours I could make a lot more sense of something that would be alien to me yesterday.
You're absolutely right in that you should use requests. I took a quick look at the website and apparently the URL for each individual user isn't behind an authentication layer.
For example, here's my URL of a fake account I just created:
https://edabit.com/user/xHRGAqa56TcXTLEMW
You're able to view all the contents without the login credentials.
​
I recommend just using beautifulsoup to parse out the information of that webpage and extract the XP. The div class for the score is in class="score-container"
Here's some starter code. I'm sure you can figure it out from here.
from bs4 import BeautifulSoup import requests url = "https://edabit.com/user/xHRGAqa56TcXTLEMW" req = requests.get(url) soup = BeautifulSoup(req.content, 'html.parser') print(soup.prettify())
My suggest is you don't waste your time with html and css. Of course you should learn these. But you should spend your time with JS. You can practice with this website 'https://edabit.com/challenges'. Most of frameworks have framework of style, like Reactstrap or Angular Material etc. If you learn these and you learn how you can create custom components with these, you can advance. In frameworks, React and Vue is best for beginning. Because at Angular you should write typescript. It's easy but you know you should learn one more things. You should going to step-by-step. My opinion, firstly, you should learn to React and React lifecycle, then you should learn Redux or other state management tools. If you learn these, you can learn easyly other frameworks. Because other frameworks is similar logically except use. During at side you should do too many example for take experiance. But most important you should do practice with JS. Because we use JS everywhere.
There is your answer, then!
I do agree that programming is a solid alternative to gaming (more or less, depending on what genres you like) and I feel it’s a better way of spending time. Programming has many different facets, so you also have more game-like activities available like CodeCombat that you mentioned and solving puzzles/problems on sites like Edabit that have XP and levels, or contests.
One difference is that programming doesn’t offer a steady flow of dopamine-fueling rewards, they really need to be unlocked with determination and persistence, so initially it can seem boring because progress is strictly effort-based, especially when you hit plateaus or a subject requires some chewing on. But in time, as you learn more, it all opens up more and more, and the deeper understanding is quite rewarding (and hard earned). Much of what you learn is transferable to other domains and languages, so it’s never a waste of time.
I feel the "very easy" challenges over at Edabit are a great starting point, because they are mostly actually "very easy", so someone just starting out with a language can have a go at them without getting overwhelmed. They have quite a few for C#, too.
I would do Node first (with Express). I'd probably go with Vue over React, but I really do like Vue a lot, so I'm biased here. It gained a lot of traction this year and I feel it's easiest to pick. If your JS is limited to using jQuery or doing simple front-end stuff only, I'd prioritize improving in this area first. It combines well with learning Node. Problem sites like Edabit are great places to practice languages.
Like /u/insertAlias said, if you have spare time, use it to write code. If you have no idea what to write, google for "beginner project ideas in Java". Or replicate the projects from your course (from scratch, without referring to the course materials). You can also solve problems at Edabit and other sites like it.
If you still have more time, you could read a book like "Start out with Programming Logic & Design" (Tony Gaddis) or "Programming Logic and Design" (Joyce Farrell). Both books cover much of the same ground and teach logic with pseudo code (you could even translate the exercises and lessons to Java).
Copying answers without understanding them is part of the problem. You'll encounter increasingly harder material that you will understand increasingly less. If you don't take time to really understand the basics and fundamentals, you won't understand the more advanced concepts, either. If you don't understand something, research it. Look for YouTube videos, Stack Overflow answers, blog posts, and experiment with the provided code examples.
Do you spend most of your time studying JavaScript, but not actually doing anything with it? For material to really stick, you have to practice it. Write small scripts and do projects of your own -- not just the ones that are part of the courses and books, but something you do from scratch. Not as good, but better than only studying, is solving problems, like the "very easy" ones at Edabit. The answer to "not understanding" is not "studying even more", but "writing more code and practicing what you're not 110% confident about".
Really resist "cheating", though. Copying answers that you don't understand just to see some progress bar fill up cheats you out of the opportunity to learn. It's not a race. It can be a bit upsetting if you see others learning and progressing faster, but everyone is different. Some people learn very quickly and then hit a wall later on, and some people need longer to get started, but later have smoother sailing.
Take a break from studying and write code instead.
You can do quick problems in whatever languages you want(it doesn't have all languages but there are c languages and java problems. Some are harder. Some are easier.
Try running through some edabit.com challenges and see if it turns you on. Don't forget to read the reference material available for each challenge.
​
Yeah I used https://edabit.com/ heavily, great interface and you can see other people's solutions once you complete or give up on a question.
I also made my own hacky random question generator on code pen : https://codepen.io/jsells/pen/mxxQRv . These are some questions I actually had in interviews as well as ones I have found online.
PS if anyone is in Toronto, I'm hiring frontend/ full stack devs for a large Canadian corporation. PM me.
Gain some easy wins on edabit.com.
​
Do some graphical projects. For instance, convert some of those ATBS projects to GUI interfaces, using PySimpleGUI.
​
Do the same with anything you handle regularly. For instance, build a GUI interface for simply copying a file from one location to another. Set up graphs and statistics and enjoy the visual goodies. Sometimes, having something beautiful to look at is a great way to keep from burning out.
​
I always recommend edabit.com as you can learn at your own pace. It does start out at a very elementary level, but you can move past that quickly.
​
The good thing about having to work through elementary exercises, is that it breaks you out of old habits that aren't always needed in Python, such as defining a counter for a loop. (In many cases, in Python, you can loop through the elements of a collection directly, without an index counter.)
​
I've been using a site that was posted in this sub a while back. https://edabit.com/about The challenges are really good for pushing yourself to understand why the code works as opposed to memorization.
Give it a try. Perhaps it's what you might be looking for.
Learning to code is definitely something you can do if you want to. Learn the basics from any number of sources (I liked Al Sweigart's Automate the Boring Stuff), practice with edabit.com (you can start there as soon as you've done an intro chapter or two of any basic coding book that teaches about variables and loops) or any number of coding puzzle sites, then figure out a project you'd like to do for yourself.
The career question though is entirely different: That depends on a ton of factors (including things like where you live, what industry you want to be in, even what you mean by "coding" for a job) and isn't limited to the simple question of whether or not you can learn to code.
What I did is learn the basics and am now getting better by taking my current job and using python to automate processes that I would do manually otherwise. (Luckily, I have a desk job already, so that part is easier than if I was doing physical labor.) If you work with computers at all at your current job, there is a good chance that you can learn python and test your new skills by creating scripts to automate data entry or tedious processes.
Improving your problem solving skills (and really, just "logic" skills) just takes time and practice. Specifically, I recommend doing coding challenges everyday, coupled with (if you can balance it) a large-scale project. For small, fun, bite-sized challenges, I recommend /r/dailyprogrammer or this awesome site. For something akin to a larger project, check out the [Hard] posts on DailyProgrammer, or just pick a direction that interests you and go. Something like building an interactive website from scratch (or with a framework even!), writing a basic compiler or interpreter, making an app for Android or iOS, or even contributing to some large, complex open-source projects. This is also the type of stuff you can put on your resume.
It’s strictly test based. If you need help, get clues from the “Resources” tab. Also, read the about page for my personal philosophy on how programming is best learned.
The TL;DR is:
>None of the questions build on C++ concepts (unless I missed them) like pointers, typedef, etc
C++ support was just added a few days ago, so the challenges are actually converted from JavaScript/Python; hence the reason they seem more fitted to those languages. As community support for C++ grows, I'm sure users will add challenges specific to C++'s strengths. Also, the purpose of Edabit is to teach the user how to think programatically. If you're really advanced, I would recommend something like hackerrank or leetcode. They have challenges more appropriate for your skill level, although Edabit will eventually have harder C++ challenges too.
Right now, it's just me working on Edabit as a side project to learn React. As such, it can be a little slow moving at times. If you want to kick start C++ specific challenges, you can create challenges yourself or translate challenges from other languages. In fact, half the challenges on Edabit were created by our community members!
Here is a link to the site. I'm currently using prerender.io to serve up static versions of the dynamic content. I've had no problem getting indexed but I'm thinking my root domain won't rank in non-English countries because spiders will see the site as default English. Unless they use separate user agents for each country which would trigger that language to display as default. Then they could display the appropriate title/description in the SERPS... Uncharted territory for me.
The site isn't for ecommerce. Here it is: it's a web app for teaching users how to code. My only concern is that users see challenges in their native language and the root domain ranks for relevant terms in the respective languages.
Find local trustworthy QA training courses, led my authentic teachers who actively work in QA. Get into Automation. Make the dough.
I'm also smashing in Java @ about 4 hours a day. Mixing YouTube vids, W3Schools, TutorialsPoint with https://edabit.com/challenges/java (this was an answer to my java question in another subreddit). Stay positive.
IMO, 6 hours is overkill. Make sure you break it up otherwise you will burn out.
Good luck and God Bless!
https://edabit.com/challenges/java This gives u free java tutorial challenges & checks your answers. You can select your skill level from easy to hard & if u can't solve it, it will show u the answer. This is more for practice as u learn.
W3schools.com kan ik ook als goede basis voor het beginnen leren aanraden! En dan een site als https://edabit.com/ om je een beetje uit te dagen met verschillende problemen om met coderen op te lossen.
I would get good at Javascript - do some projects in vanilla javascript before moving to a framework. I did that and I'm always glad I did. I recommend edabit.com for coding challenges and I would do Wes Bos's 30 day challenge - build 30 things in 30 days. It's a free course - visit his website. Except don't do it in 30 days. Repeat the same one over and over until you can just do it without looking at the answer. Btw, I absolutely hated free code camp
I used to recommend Edabit but then it became a paid service. However you can still view all of the challenges, it just won't let you submit your answers and see if they are right or wrong without paying a fee. Still has a lot of good challenges to give a shot.
As a JS dev, this is too good. I don't know python at all. This is really a game-changer.
The only practice by learning site I love is edabit.com, your's is pretty same concept-wise.
I've a few ideas to share, I'll create an issue on GH.
Go on codewars.com or edabit.com
Always use the suggested resources to solve the problems, and when you get it right always check the solutions. The top answers will usually use methods that shorten your code a lot, that you either didn't know or didn't occur to you. At first you'll marvel at how bad your solution is, but after a decent amount of practice those solutions will begin to occur to you too and your rate of improvement will feel really good.
Her sözüne hak verdim. Ülkede bir şeyler değişecek gibi duruyor. Kul hakkından en çok bahsedenlerin en çok hak yediği Vatan millet bayraktan en çok bahsedenlerin ülkeye en çok zarar verdiği garip bir dönemdeyiz. Neyse ki bu dönemler bitince ilerisini yaşayacağız diye umutluyum.
Eğer ilgilenirsen bu tarz siteler var telefonundan bile girip yazılım öğrenebilmene yardım edecek. Elimden geldiğince de yardım etmeye çalışırım takıldığın yer olursa. Açlıktan bir deri bir kemik kaldığı halde almanya bizi kıskanıyor diyenler hayallerini çalamayacak. Gelecek için umudumuz olsun. Zaten umuttan başka bir şeyimiz olamıyor ülkede. Kardeşim uniye başlayacak para yetecek mi diye düşünülüyor, burs aldığı halde.
I'm not overly experienced, but I've also been through my first round of technical tests recently. I found it helpful to go over challenges on sites like https://edabit.com/ to go over a few things in the languages they wanted me to use. I'm sure you can find similar for other frameworks.
I'd also recommend chilling the fuck out. I was nervous as all hell and could have made things much easier on myself if I'd have done that. Don't stress, and don't go off on a tangent, just stick to the task at hand.
As a friend and a few helpful Redditors have pointed out, more and more technical recruiters/interviewers now understand that tech tests/interviews aren't a true reflection of a candidate, and they're instead looking for the underlying stuff - making sure candidates can look at things logically, break it down into steps and think up all different outcomes/inputs/scenarios.
Aside from that, congrats on your first interview! Hopefully, you'll nail it, but if this will still be a good experience for you. There's plenty of threads in dev subs on Reddit about first interviews, so take some time to go through the search bar a bit as well - you might find some helpful nuggets.
Hey! I'm also doing this course, currently in section 28: AJAX and APIs and although the JS part gets quite hard at times (I have no experience with programming), I find what's been working for me so far is:
Hope that helps, don't give up!! :)
There is a website called edabit. https://edabit.com/
This website has really simple coding problems for beginners. Choose c++ as your language and try to solve the problems.
Stay away from leetcode.com for now. Those problems are way too hard for beginners and will make u rage quit cs.
Hey OP! I'm a python beginner too. This is the site I use (edabit), simple UX that allows you to get right down to business. Just select Python in the drop down menu and select your difficulty.
Maybe this site can help: https://edabit.com/challenges
It has a ton of challenges in different languages, including C#. You can set the challenges by difficulty, each challenge has reference to the relevant documentation that would be the obvious approach to solving the problem, and you can also see solutions others have made for the same challenge.
Cs50 is a good primer for your programming foundation. https://www.freecodecamp.org/news/harvard-cs50-guide/
Then you can start practicing the syntax in C++ https://edabit.com/challenges
And start to build stuff to think like a programmer https://github.com/danistefanovic/build-your-own-x
Three simple steps!
I also HIGHLY suggest making small projects as you go. So once you learn the basics of c# try to make a tiny project, maybe a multiple choice test with x questions that gives you a grade at the end. Small things like that will help reinforce learning. I also found this site useful, you make an account and just do a few problems each day to help learn new things and get you into problem solving mode. https://edabit.com/challenges
I recommend do small projects whenever you can to really internalize it and to take a break from dry syntax.
I also had some fun with the coding challenges on https://edabit.com/challenges when I was learning but anything that will let practice works.
Am currently doing a Comp Sci course, Theres lots of people who haven't coded much or at all, it will be very tough unless you are willing to put in the hours to learning. Definitely try it out before hand, I suggest learning fundamentals of programming and starting with a few beginner languages like Python and C#, plenty of online content out there and you will be using it during uni anyway. Most first year modules will be C# orientated if its games you wanna do theres always Unity but I wouldn't touch it until you understand C# at a intermediate level, lots of people fall down the Unity hole and never end up learning C# properly. Check out W3Schools and Edabit , see if you like it and go from there.
I started off on sudo languages, then python, then moved to C++ because of school.
Honestly I learned a lot using a textbook, it was a good resource.
That and cppreference.com , as well as cplusplus.com - The C++ Resources Network .
I also used edabit to brush up on creating functions for C++ and other languages.
[If you have the fundamentals of programing down it's a nice resource to use to learn how to code]
If you want to look at the text book it's:
ISBN: 9780134498379
Starting Out With C++ From Control Structures Through Objects ,9Th Edition, Global Edition
by Tony Gaddis
Is there a list somewhere of what is free, and what is premium? I have a student saying they were able to complete 15 challenges for free, but then hit a limit. I'm seeing other stuff below showing that you can maybe see challenge but not test them.... and the edabit.com/pro page doesn't go into any of the details here
I'm looking towards enrolling on the Data Engineer with Python Career Track but before I enroll on that I'm working through the requisite skill tracks... so I've completed Python Fundamentals and now just started the Python Programming Track.
Alongside doing the Python Fundamentals track I was working my way through the Edabit challenges (https://edabit.com/challenges/python3) and reading through the other coders answers and comments. This also introduced me to various resources where I could widen my knowledge or refer to when I'm stuck on any concepts introduced in DataCamp.
I found this really helped reinforce what I was learning in the DataCamp course and especially when I got to the Data Science Toolbox course everything slotted together nicely, I'd been picking up little bits like list comprehension, lambda and function writing through the Edabit Challenges.
I'm a complete coding novice and only have a limited amount of time to study each day (this maybe helps me as I'm just taking in a couple of new concepts each day rather than whizzing through too much material at once)
The biggest thing I've found to really imbed understanding of Javascript (and more particularly conceptual programming) is spamming coding challenges.
I did a udemy course but my knowledge of javascript only really started to push forward into feeling confident when I started coding challenges.
edabit.com is more for beginners, start from very easy or whatever level you like and keep ramping up the difficulty everytime you start to be able to consistently do each level without looking at solutions and not relying on the resources too much. Once you get to very hard (only took me a few weeks of spamming for a few hours a day) and feel capable go onto codewars.com where there are more difficult challenges and you don't get your hand held with a resources tab (so you have to practice locating the documentation yourself)
I think once I started to feel capable of doing those, coding websites started to become a lot easier. You can break down the steps to doing what you want to do, and each of those steps becomes a relatively easy coding challenge question. It hugely cut down on the amount of time it would have taken me to imbibe coding logic if I'd just started with projects right away.
These are all beginner friendly and difficulty levels are marked
I found links in your comment that were not hyperlinked:
I did the honors for you.
^delete ^| ^information ^| ^<3
I really enjoyed the progressively increasing challenge provided by edabit.com python lessons. Started out super-simple, and then they get harder as you go.
After a few lessons on there, it may be time to read "Automate the Boring Stuff", and work through those lessons.
You might go through a few things before you find something really enjoyable. Check out this sub's wiki for a detailed list of available teaching resources.
" because I want to love C++ "
The more you do something the better you will be at it, the more you will like it. Dedicate a set amount of time (it doesn't matter how long) each day to practice some coding. Be consistent (do it every day) and after a few months you will be amazed at the progress you make.
You can google "practice C++" for things to do, I'll get you started with the first one.
https://edabit.com/challenges/cpp
​
HackerRank is a good source of sample problems as well.
Hey Andrew,
These are quite useful resources, thank you!
I just wanted to add edabit as a viable alternative to the coding challenges you recommended. It's the easiest of the bunch so it can definitely be a good stepping stone before moving to CodeWars. LeetCode is definitely a significant step up from the other two, often requiring good knowledge of data structures and algorithms, which we touch upon on CS2B and CS2C. A necessary evil if you're interested in some software engineering jobs but even the easy questions there are quite brutal.
- Chetan
It may be that async online courses just aren't the best method for your learning style. I would try to supplement (where possible) with something like code academy or sites that have smaller "challenges". This way there's not the pressure of an overarching grade or complex project. i.e https://edabit.com/challenges/java
Definitely consider if you enjoy the concepts and studying the subject not just the language itself. I found myself pretty unhappy with most languages until I found that I got along well with Python and assembly (I know two drastically different ends of the spectrum there) but never could bring myself to get into Java.
Experiment a little and evaluate if your feelings are toward the teaching method, the language or computer science overall. Good luck!
https://edabit.com/ might be able to help you with that. This is a site for practices problems for multiple languages. You can use the filter and only find problems with bugs, they will have bad code written that needs a solution.
Soy programador, en mi universidad se imparte la carrera de biomédica y muchas veces compañeros de esa carrera se acercaban a pedir consejos, si te puedo recomendar algo es aprender algoritmos estos se replican en todos los lenguajes de programación y si tienes curiosidad de aprender uno para practicar dichos algoritmos te recomendaría Javascript, es muy sencillo y lo puedes programar incluso en Chrome o cualquier navegador que tengas. Te puedes apoyar de páginas como https://edabit.com/ que tiene muchos "desafíos" de programación y va subiendo de dificultad Saludos
first get accustom to what everything do, knowing what everything do will help you to use logic, it's like talking, you don't think about your sentence as you speak you just do.
second, think how would you do it if it was a real life situation in which you have to follow an expecifict order of instructions (if you could post an example I could halp you).
third, a good way to learn is to see other people work or answers, I recomment you to use https://edabit.com/ which is a site with code challanges/exercises, there are many other site like that such as codewars, and many others, but for the time beginning I recommend that one, if you have problem with one excercise just unlock the solution and study it, you can see every solution made by other people so you can compare how different everyone gets to the same result, don't be ashame to fail.
And other thing don't be scare of people using syntaxis that you have yet to learn, fancy syntaxis does not make your code better, you will learn that fancy code is not needed it's more like a commodity and not a essential, think about it like this:
"a lumberjack needs to cut a log, in his toolsheet he has a saw, an axe and an electric buzzsaw, any of these will do the job but one of these will make the job easier"