Tips for Beginners

This is a guest post written by our intern Adam Holt. Follow along as he learns more about programming for the very first time

Some people seem to be born to program. Hard work aside, they have a mind for it. Other people, like yours truly, are completely in the dark. Savvy Coders is here to help. If you’re reading this clearly you’ve gotten through the first step to programming, turning on your computer. Great! Let’s look at some tips for beginner programmers (but if you’ve spent some time in the trenches it doesn’t hurt to have a refresher).

Google, that glorious repository for the entirety of human knowledge, is your friend (I was also surprised) according to Trey Baugher, Associate Director of Technology, Mobile at Manifest.

“Google, Google, Google. There is nothing wrong with searching the web when you encounter a bug you can’t figure out or just need help understanding a programming concept. There’s a 99.9% chance someone has encountered the problem before and has already figured out the solution,” adding that StackOverflow is another great resource. Beware of the urge to copy and paste though.

Never blindly plug a string of code into your program. It will probably not “just work” says Baugher. Even if it does you now have a block of stuff you don’t truly understand. Better to try and understand this fix, and why it does the fixing. Or else you could run into bigger problems later on. Aaron Holderman, Front End Developer at Manifest Digital agrees, extending this to frameworks. He sees junior developers being too reliant on frameworks. They only understand jQuery instead of knowing how to write Javascript, or Bootstrap instead of understanding CSS. Which while they have their place, a developer’s time is better spent on learning the actual language instead of a framework’s syntax and structure.

“Frameworks are essentially a giant copy and paste, and lead to bloated code.” Said Holderman.
It’s better to actually understand the fundamentals, both agree. But what exactly does this mean?
Don’t get hung up on the proper code styling. Instead save those hooks for the logical structure of your code. “learning a new language syntax isn’t challenging, a for-loop is always going to be a for loop. Knowing when to use a for-loop and why to choose it over another implementation or which data structure fits your needs best is what makes a good programmer,” Says Baugher.

Sticking to those fundamentals will keep you and your project focused. Does your project really need that much trendy coding? Sure it’s cool, but simplicity tends to be better.

“Don’t get distracted by the latest hotness. There’s always going to be a new Javascript framework that will revolutionize your process and make everything else obsolete. Try to tune that noise out.” Says Baugher.
Is all this complexity doing anything other than prove you can? People don’t like convoluted and superfluous webpages. We’ve all stumbled upon that site. We’ve all noped out of it as well. Bad navigation and website design halt traffic. If a user can’t find where they want to go in three clicks they will probably leave.

So our fundamentals are strong and fancy trends ignored. There is a bit more to web DESIGN than just logic and keystrokes. There’s the design aspect to muddy the waters. Is your website laid out on a grid? It will help the site to flow and to visually give yourself parameters. How far images and text span this system is up to you. Mix it up. Just keep design themes consistent. Teach yourself this system and stick to it, advises Holderman.
“Unlike code, design is a bit more fluid and iterative, and perfect is the enemy of good. So don’t waste too much time trying to nail down everything exactly in a design app because once it’s in the browser with real fluid text things will change.”

Speaking of design themes, how’s that typography? Learn about typography, and keep things simple. Two typefaces with three sizes for each should be more than enough for most sites says Holderman. Check that site at a range of resolutions. Not everyone will be viewing it on large screens. Remember, we live in the gilded age of technology. Almost everyone has the internet in their pocket(exciting times). Your headings should clearly look like headings. Make sure your leading(vertical space between lines of text) is good. Too tight and the viewer could lose their place. Frustration. Website left for better designed pastures. Utilize that white space. One of the most important parts of typography is contrast. Dark text over light. Purple over pink is not a good look.

Which brings us to color theory. Do you know yours? If like me you suffer from non-medically diagnosed color-blindness you may immediately despair. But take heart. People more artistically inclined than us also know how to program! Holderman prefers Use them, because for some of us that color part of kindergarten was tough, it is okay, I understand.

Once you’ve cleaned up your obnoxious Jackson Pollock-esque example of a website it is time to have a second pair of eyes look it over. The code and the finished project. That pair can do wonders spotting issues. Sometimes you’re just too close to something, figuratively and literally(your mother was right, that’s too close to the screen). So sit back and give those peepers a rest.

You aren’t finished after a second opinion though. Test, test, and once more test the site before launch. Baugher subscribes to the philosophy of “failing fast”. By testing often you can see what is broken. Through experience he’s found it easier to debug 10 lines of code instead of 1,000. Once you’re done… test it some more. Programming is difficult yes, and at the heart is about problem solving. Baugher admits there will be bugs you just don’t understand, but says you should stay committed.

“For most programmers the euphoria of finding the solution to your problem outweighs the 6 hours of troubleshooting (which sometimes feels like banging your head against a brick wall over and over) spent to get there.”

With practice, perseverance, and you will have a beautiful, functional, lean masterpiece sure to wow all whose screens it graces. There you have it, simple advice for making simply good websites. Happy coding!

Have any questions?

We can answer them!