I’ve said this to my non-techie friends countless times. It’s no secret that being able to code makes you a better job applicant, and a better entrepreneur. Hell, one techie taught a homeless man to code and now that man is making his first mobile application.
(note: yes I realize that 3/5 of those links were Google projects)
But most folks are intimidated by coding. And it does seem intimidating at first. But peel away the obscurity and the difficulty, and you start to learn that coding, at least at its basic level, is a very manageable, learnable skill.
There are a lot of resources out there to teach you. I’ve found a couple to be particularly successful. Here’s my list of resources for learning to code, sorted by difficulty:
Novice
Never written a line of code before? No worries. Just visit one of these fine resources and follow their high-level tutorials. You won’t get into the nitty-gritty, but don’t worry about it for now:
w3 Tutorials (start at HTML on the left sidebar and work your way down)
Intermediate
Now that you’ve gone through a handful of basic tutorials, it’s time to learn the fundamentals of actual, real-life coding problems. I’ve found these resources to be solid:
If you’re here, you’re capable of building things. You know the primitives. You know the logic control statements. You’re ready to start making real stuff take shape. Here are some different types of resources to turn you from someone who knows how to code, into a full-fledged programmer.
Programming problems
Sometimes, the challenges in programming aren’t how to make a language do a task, but just how to do the task in general. Like how to find an item in a very large, sorted list, without checking each element. Here are some resources for those types of problems
If you learned Python, Django is an amazing platform for creating quick-and-easy web applications. I’d highly suggest the tutorial - it’s one of the best I’ve ever used, and you have a web app up and running in less than an hour.
I’ve never used Rails, but it’s a very popular and powerful framework for creating web applications using Ruby. I’d suggest going through their guide to start getting down-and-dirty with Rails development.
If you know PHP, there’s an ocean of good stuff out there for you to learn how to make a full-fledged web application. Frameworks do a lot of work for you, and provide quick and easy guides to get up and running. I’d suggest the following:
If there’s one point I wanted to get across, it’s that it is easier than ever to learn to code. There are resources on every corner of the internet for potential programmers, and the benefits of learning even just the basics are monumental.
If you know of any additional, great resources that aren’t listed here, please feel free to tweet them to me @boomeyer.
Best of luck!
I’d also like to add some more specialized resources!
SpriteKit (2D) and SceneKit (3D) which are built into the official compiler to create iOS apps (see iOS apps for more resources)
also all of the above game engines (cross-platform)
Game console development:
Game Maker Studio (with a paid subscription)
Unity
Unreal
CryEngine
Note that games can also be created on more general platforms like iOS and Android apps, but the resources listed above are specialized for game development.
iOS apps:
In order to develop iOS apps, you’ll need to purchase an iOS developer program membership for $99 a year, which requires an Apple account. Here are some general resources:
Xcode (the official IDE for iOS apps; can be installed on OS X)
Xcode also has SpriteKit, SceneKit, and Metal built in, all of which are incredibly useful for creating apps that require elaborate graphics, particularly games.
Also, in order to publish iOS apps, you’ll have to juggle certificates, app ids, and provisioning profiles. This process can be convoluted at times so here are some resources:
Blender (can also be used to create games; Python script; free and open-source; can be installed on Windows, OS X, and Linux)
Maya (specialized script; free trial, free 3-year student subscription, and paid subscription versions; can be installed on Windows, OS X, and Linux to an extent)
3ds Max (Python script; free trial, free 3-year student subscription, and paid subscription versions; can be installed on Windows and OS X)
RenderMan (specialized script; free for non-commercial/educational use and pay-per-license for commercial use; can be installed on Windows, OS X, and Linux)
Misc. resources:
Stack Overflow is an ask-and-answer community for programmers. It’s amazing and will save your life. Sign up and don’t be afraid to ask for help.
Github offers a student pack (here) if you create an account and prove you’re a student. This gives you free access to a bunch of great programming resources for free for a certain period of time, such as Unreal Engine. Also, Github in general is a site that you can host your code on. Other users can see it, and “fork” it to make a copy of your code and modify it.
Parse is a backend service that allows you to store data in databases it hosts on its own servers. It lets you use push notifications, create users, store and retrieve data, etc. It’s compatible with iOS apps, Android apps, Windows apps, Xamarin, React, Unity, OS X, Windows, JavaScript, PHP, .net, Arduino, and Embedded C. It’s free up to a certain limit that depends on the services you use.
Cloud9, Codebox, and Squad are online IDEs that allow for real-time collaboration and support a variety of languages, so they’re useful for team projects.
And some general advice:
Your program will not work right away, 99% of the time. That’s okay. Do your best to figure out where the error is. Here is some advice on debugging (written for PHP but the methods can be generalized).
If you’re stuck, Google. Google like there’s no tomorrow.
Ask questions on a community like Stack Overflow.
For that matter, browse relevant Stack Overflow questions. You can probably find some solutions there.
Don’t be afraid to copy and paste.
Take breaks sometimes if you’re getting burned out. But don’t stay away from your projects for too long or you’ll lose track of its status.
Backup your code. On the cloud, on a USB drive, wherever. If your IDE has a backing up feature like snapshots, use it whenever you hit a milestone.
If your project is big, split it up into milestones and set goals. Don’t tackle everything at once.
Like the OP said, coding isn’t just for professionals and “geeks” anymore. Anyone can learn it if you really try, and with the rapidly expanding tech industry, learning coding can really broaden your opportunities.
If any of the links are broken, or you have a question or some information/resources to add, you can contact me through the askbox or the OP through his Twitter (as mentioned in his post).
If you’re interested, try some of these out and best of luck!
Great work expanding on my humble list to include a much fuller collection of resources for learning how to code! Cheers!
@veronicasantangelos You might want this at some stage when you finally start Uni!
Just to add to this;
1, Set yourself up an account on jsfiddle.net and you get yourself an awesome, easy to use sandpit for trying out JS/JQuery/JS framework stuff. YOU DON’T NEED TO INSTALL ANYTHING (woo!). It’s free.
Just remember if starting a fiddle from scratch, you’re usually gonna be coding with JQuery, so you gotta set JQuery as your framework:
2, Got a light/medium understanding of JS? Next step: learn AngularJS. Seriously, it’ll blow your mind. Just remember to select it as a framework in JSFiddle:
for the record, codeacademy is good with basic syntax but doesnt teach you much of the why/how of what’s going on. But if you want to learn python for instance, there are several free classes (all you have to do is get an account, but it doesnt cost anything) at udacity.com. also, automatetheboringstuff.com gives you access to a how-to ebook on programming in python, aimed at people who have never coded before. those two resources have helped me out a lot more than codeacademy and whatnot
for modeling and animation: there is also Maya LT, which is $30 USD a month compared to standard $185+ Maya and 3DS Max subscriptions since it is geared toward indie game development
Few things worth pointing out/adding this post:
Xcode no longer requires an iOS developer’s license to push your app to a mobile device. However, it’s still needed for submission.
If you do develop for mobile and plan on submitting your app I would recommend looking at Apple’s human interface guidelines, or at the very least the do’s and don’ts of UI design. Your app doesn’t have to look and work flawlessly but if it’s clearly a mess Apple will reject it.
TalentBuddy was bought by Udemy and I don’t believe the actual coding problems are available anymore? HackerRank effectively does the same thing.
Speaking of Udemy, they just changed their terms of service and courses aren’t astronomically expensive anymore. It’s paid, but if you learn better through videos here’s my favorite iOS course.
DON’T ignore GitHub. There are a LOT of open source projects available that are specifically created to make the production of your app easier. Few examples:
Chart.js makes adding graphs to web pages much easier [x]
Spring makes it easier to implement UI animations into your app [x]
New XKit’s source is on here [x] (not really something you’d “add” to anything but I thought I’d point it out)
Realm is super easy to use and is great for databases on mobile devices.
Udacity was mentioned but I want to stress how great it is at explaining concepts without taking up too much time. It’s faster paced but it puts a lot of emphasis on creating projects on your own without telling you explicitly how to do it, which imo is the best way of learning because it makes you have to actively think about the material you’re looking at instead of just copying everything the video does.
even if you get along great with your family you will get along even better with them after moving out
generic is almost always just as good as name brand. But there are some things you never buy generic, including: peanut butter, ketchup, liquid NyQuil, Chips-Ahoy chewy chocolate chip cookies
just imagine the person on the other end of the phone hates talking on the phone as much as you do. Even a receptionist. I worked as one and I hate talking on the phone
at least once in your life you will go to Wal-mart to buy something under $20 like an ironing board or something and your debit card will get rejected. No one will judge. Everyone at some point in their lives has had $2.98 in their bank account.
thrift stores
everyone else is too busy panicking about everyone else noticing every tiny thing that could possibly be wrong about them to notice any tiny thing that could possibly be wrong about you
you will screw up. a lot. you live and you learn. and when you start to think too hard about that embarrassing thing that happened and how you wish you could change it, just tell yourself that what’s done is done. There’s no changing it, so just forget it and move on. It’s the only way to stay sane.
do the dishes before the sink grows its own ecosystem
you can’t put Dawn dishsoap in the dishwasher.
if you are the only one in the aisle at the grocery store, and you need to get from one end to the other without even looking at anything in that aisle, then you should totally cart-surf down the aisle. Growing old is mandatory. Growing up is optional. Hold on to the little things. They make all the difference.
never try to make cake from scratch at 3am. You end up with a topographical map of Middle Earth.
15% tip.
the best way to get money for food is to tell your grandparents about how you basically live on microwaved mac and cheese. Their horror may result in twenty bucks and orders to go out and get yourself “a real dinner”.
sometimes life sucks, and knowing that it might get better doesn’t always make it suck any less, but you’ll never get to the non-sucky days without enduring the suckiness.
no seriously, NEVER put Dawn in your dishwasher
Do not buy generic brand spaghetti sauce either.
Always check the type of light bulb that goes in lamps. A 60w is not interchangeable with a 40w.
Dollar store batteries work just as well as store brand.
Reward yourself from time to time when you do things that you needed to get done. It’s a good way to remind yourself to do them. Going out to pay a bill? Get Starbucks or something you don’t get often. Rewards don’t have to be huge, they can be small things like that.
Rice, pasta, flour, sugar, cheese, eggs, milk, a pack of chicken, a pack of frozen veggies and a well stocked spice cabinet go a long way food-wise. Splurge and get the biggest container of rice you can. You don’t have to go back and buy it again anytime soon and it makes a TON of meals in the meantime.
Rice can be cooked on the stove. You don’t need a fancy rice cooker. Two parts water to every one part rice (two cups water for one cup of rice for example). Get your water boiling, add rice, put a plate or lid on it, put it on low for 20 minutes. It should be done.
Keep a calendar on your pc of bill due dates. If your bills are set up at inconvenient times, like all of the services started on the first or something, then call up the company and find out if you can get your billing date switched to something more manageable. A lot of places do try to work with you.
There is no shame in calling a company and asking for an extension on a bill. Let them know what you can pay, pay that amount, and they arrange when the rest of the payment is required. This can stop you from having services shut off man. It shows responsibility on your part.
Take time to eat, even when you don’t feel like eating. Your body needs energy to live.
Wash or rinse your dishes before putting them in the dishwasher. It prevents gross caked on junk.
“The Works” is an excellent cheap toilet cleaner.
MAGIC. FUCKING. ERASERS. THEY WORK ON EVERYTHING JUST DON’T SCRUB HARD. I took the ring out of our bathtub with one. Also generic ones work just as well.
Keep some bleach around but if you use it for cleaning? Dillute it. There’s rarely ever a case where you need to pout straight bleach on anything. A cap full or two in a bucket of water works just fine.
DO NOT MIX CLEANERS. Chemical reactions are can be very dangerous. Here’s a good list. (Note that vinegar and baking soda can actually be a good combo for removing smells from things but it’s not very good at actually -cleaning-.)
If you drink? Don’t take meds at the same time it’s just not good.
Make sure you check the dosages on your pill bottles. No one wants to accidentally overdose on cough syrup or ibuprofen.
If you have a uterus make sure you have a heating pad and ibuprofen on hand for the pain. Hot baths also generally help and Ginger Tea is excellent for any nausea.
Buy a first aid kit. It’s worth it in the long run.
You can often do your taxes online at places like TurboTax.
Petroleum jelly (aka Vaseline) is good for chapped lips and you can get a decent sized tube or tub of it (generic brand version) for cheaper/same price as Chapstick.
KEEP TRIPLE ANTIBIOTIC OINTMENT IN YOUR HOUSE FOR CUTS AND SCRAPES AND SORES.
~~Medications~~
Over the counter medications (stuff you can buy right off the shelf no prescription needed) have a name brand and a generic name. ALWAYS buy generic if it’s available it is literally the same thing and way cheaper usually.
Some names to remember when you’re looking for meds!
Acetaminophen = Tylenol
Used to treat pain and reduce fever. Do not take with Ibuprofen.
Ibuprofen = Advil, Midol, Motrin
Used for pain and fever, is an anti-inflammtory. Is good for period cramps because it is an NSAID (non-steroidal anti-inflammatory drug).
Naproxen = Aleve, Naprosyn
Treats fever, pain, arthritis pain, gout, period cramps, tendinitis, headache, backache, and toothache. Is also an NSAID.
Acetaminophen + Asprin + Caffeine = Excedrin
Usually marketed as “Migraine Relief” as a generic.
Asprin = Bayer
Use for pain, fever, arthritis, and inflammation. Makes you bleed easily so should not be used for periods. Might reduce risk of heart attacks.\
Triple Antibiotic Ointment = Neosporin
Used on cuts, sores, and scrapes to reduce risk of infection and promote healing.
Also a general mutli-vitamin isn’t a bad idea and if you don’t get a lot of fruits or milk/sunshine in your diet you might want to get vitamins C and D specifically for daily use.
if you do accidentally lapse and put dawn in your dishwasher, run it empty and put hair conditioner where the detergent goes. that’ll clean it out (tip given to me by dorm custodian when roommate did the thing).
if you live off ramen, add stuff to it! add veggies you like, don’t use the whole flavor packet to cut down on sodium and msg or don’t use it at all and add your own spices.
if you’re making something with potatoes in it (beans, stew) potatoes are done when you can easily stab a fork through them.
you can microwave a hotdog as long as you put it in a microwave safe container of water. microwaves work by making water molecules vibrate. also, when reheating rice leftovers, add a small amount of water, like maybe a spoonfull, so it doesn’t get hard and crunchy.
the rice cooking advice above is for long grain rice. if you’re making short or medium grain rice, a 1:1 ratio (one cup water for one cup rice) is better, so the rice doesn’t come out too mushy.
buy a few cans of chicken. wholesale club stores like sam’s, costco, or bj’s tend to carry multipacks for a good price. they’re incredibly useful for when you forget to defrost meat.
buy meat on sale and put it in the freezer. buy vegetables on sale, and put them in the freezer. frozen veggies are often as flavorful and good as fresh ones, keep longer, and often come in microwaveable bags or with microwave directions.
soak ink stains in milk to help get them out or at least lighten them.
soak blood stains in water as soon as possible, with a bit of detergent or stain remover. scrub at them. use cold water, heat binds proteins to fabric. tbh, there’s no real need to change the washer from cold-cold setting unless the thing you’re washing says to wash in warm water.
acetone, found in most nail polish removers, dissolves super glue.
YOU’RE ALL DOING GOD’S WORK BLESS YOU
Takes pictures, have prints made and put them in photo albums. Be IN the pictures, have someone take pictures of you and your friends. Get over not looking perfect in thw picture. Someday that friend might be gone and those pictures might be all you’ll have, you will want to be in them. I made that mistake with my best friend, i always felt weird asking for a picture together… he died of cancer January of 2014 and now i have no pictures of us together. Its my only regret in life.
This is really helpful, thank you all!
I’m the newest of new adults but I’m gonna throw these little tips in there. IF YOU HAVE AN OLD CAR:
-coolant or water if your car overheats (coolant is preferable cause it won’t hurt the engine in the long run but hey i know money is tight)
-flashlight in case you break down at night and need to check under the hood and your phone is dead
-SPARE TIRE.
-jumper cables.you will at some point leave your lights on. you just will.
AAA or any other road side service is never a bad investment i swear. (try to mooch it off your parents as long as you can though)
Know how to change a tire. You’re going to need to do it at some point in time and you can’t always rely on someone else to do it for you.
Don’t be afraid to go to your local food bank. They are there for a reason.
Don’t be ashamed to ask for help period. Life is hard, everyone needs help occasionally.
You can put a LOWER wattage bulb in a lamp that says it’s for a higher one, but don’t put a HIGHER wattage bulb in. Also, watts refer to the amount of electricity used. LUMENS refers to the amount of light put out, and can vary quite a bit between brands, even though the wattage is the same. Look for the one with the highest lumens unless you actually want a slightly dimmer bulb in a certain location.
Those dollar store batteries? Fine if they’re alkaline. “Heavy-duty” batteries, however, won’t last nearly as long.
You can microwave a hot dog and bun simply by wrapping them in a toweling for a minute, less if you don’t want them scalding hot.
Reblogging to save lives.
Two adulting (kitchen-related) tips from me!
1. Buy a roll of parchment paper from the cooking shit aisle. A big roll will last you for-fucking-ever. Pretty much any time you’re using a baking pan you can line it with that stuff and save yourself A: food sticking to the pan and B: it’s a quick rinse and it’s clean.
2. Bread can get fucking expensive, so make your own. A bigass bag of flour and a bag of active dry yeast (store it in the friiiiidge!!!) works out a FUCK of a lot cheaper than buying bread at the store, and you can do so much more with it. Bread, pizza, rolls, cinnibuns, homemade pizza pockets. It seems intimidating but it’s stupid easy.
Seriously. It’s stupid simple to make, and most of the “3 hours” to make it is sitting around surfing the internet or doing whatever the fuck you want while the dough rises. If you have an afternoon free once a week to sit and play video games or surf the net, you have the time to make your own bread on the cheap. Here’s my simple-as-fuck recipe:
2 ¼ teaspoons active dry yeast (You can buy a bag of this stuff CHEAP in bulk stores, the little packets are hella stupid priced) 1 cup warm water (think a hot bath) 1 ½ teaspoons sugar 2 tablespoons oil (any kind works for the most part) 2 ¼ cups flour 1 teaspoon salt
1. Stir the yeast, water, sugar, and oil up in a bowl. Let it sit for about 10 minutes. It will foam up VERY high, this is the yeast getting happy! If it doesn’t get all foamy, the water may have been too hot or not hot enough. Remember, Yeast is alive! Treat it like a nice girlfriend!
2. Mix your flour, salt, and the yeast concoction up in a bowl.
3. Knead that shit for about 5 minutes. It will start sticky as heck, but will come together into a nice dough. If it’s still super sticky, toss in a bit more flour. Here’s how to knead it:
4. Put your dough in a covered, lightly oiled bowl and leave it someplace warmish for an hour. At that point it will have roughly doubled in size, give it a gentle punch to release the gasses that have built up inside. Cover it again and let it sit for a bit longer.
Boom. You have bread dough. Here are some baking times and uses for ya:
Optional egg-wash: Just crack an egg into a bowl, add a pinch of salt, and mix the bejeebus out of it with a fork. Brush (or if you’re like me, goop it on with said fork) that shit thinly on bread before baking for a nice crust.
Pizza: Stretch it on a pan, stab the fucker all over with a fork, add toppings, bake 425*F 15-20 minutes.
Bread Sticks: Make snake-shapes, let rest on pan 10-ish minutes, bake 400*F 10-20 minutes.
Dinner rolls: Make ball-sized (yes those balls) balls. Place on greased pan, let rest 10-20 minutes to rise. Egg-wash and bake 375*F 25 minutes.
Bread: Lightly score (cut) the top, let sit for 20-ish minutes on/in whatever you’re using to bake it, egg-wash, bake at 375*F for 20-ish minutes. It’s done when it sounds hollow if you knock on the bottom.
You bet your ass you can deep-fry this shit for cheapie yeast doughnuts. Roll that shit in sugar or dip it in whatever, it’s fucking tasty.
Bagels: YES. YOU. CAN. Form bagel-shapes out of the dough and boil them in salty water for about 2 minutes. Egg-wash them and bake them at 400*F for 10 minutes.
Cinnamon Rolls: Roll that shit out into a rectangle. Brush it with a mix of butter, cinnamon, sugar, and a pinch of salt (no exact amounts here, do it to your taste). Roll it up into a log, and cut it into discs. Let them sit 20 minutes in a pan and then bake at 375*F 15-17 minutes.
You can add whatever you want to the dough for some variety, just if it’s dried spices remember you really only need 1-ish tablespoons. I personally like making bread with about 1 tablespoon of dill in the dough. Roll it out flat, sprinkle it with cheddar, roll it into a log, squeeze the ends shut, and bake it like a regular loaf of bread. Cheesy dill bread OMNOMNOM.
*ahem* That got a bit long. But yeah. Bread’s expensive, yo. Save your wallet.
(Also it’s ridiculous amounts of therapeutic to bake, for me anyway)
Being able to bake your own bread is pretty awesome, if you got the time for it.
“Jane… I know that romance novels are all about fate and destiny. But I don’t think there’s ever been one written that could come anywhere close to our story.
If there were two people who were just destined to be together…..
“Jane and Rafael will remember every moment of this night. Because there, in the moonlight, they were having one of those talks, you know.. the kind that goes on forever.”