How to Write Comments in Python

Python makes it easy to comment. A single hash before any piece of code and a comment is born:

# A comment in Python

Maybe not a good comment but a comment it is. It can be on its own line or follow a piece of code:

x = x + 2 # This will be ignored

Multi-line comments are done the same way. One hash per line – unfortunately Python lacks true multi-line comment support. Some people like to use triple quotes instead:

“””
This is bad practice
“””

This, however, is wrong. Although it works it most cases, triple quotes are reserved for documentation strings. Beginners have a tendency to avoid comments. This is a mistake.

Don’t Fear The Comment

When it comes to commenting code, beginners tend to head in two directions. Either they over-comment causing the same problems comment work to solve. Or they go the other direction and don’t comment at all. Both cases are bad.

A lack of comments make your code difficult to maintain. “Eureka” moments become impossible to figure out for future you. Other people reading your code become lost and confused – especially if you’ve used an arcane or obtuse way of solving a problem.

At this point – most programmers will realize the importance of commenting. And so comes the second sin of commenting: too many comments.

Too Much Or Not Enough?

A lack of comments make it difficult to understand your code. Too many make it harder to read. Code that is hard to read is hard to maintain. Worse still – it is ugly. It is an eyesore to look at and the opposite of what code should aspire to be.

Short. Concise. Beautiful.

Too many comments, though, is still better than not enough.

Why You Should Use Github

Anyone who has been programming for a decent amount of time will have heard of GitHub. Anyone who hasn’t will learn about it fast. GitHub is a central repository for source code. Despite the name, it’s actually completely separate from Git. The two are heavily connected though.

So tied together that learning how to use GitHub will naturally lead you to learn Git.

What Is Git?

Git is one of the most powerful VCSs in use today. It lets you create multiple “branches” or copies of your source code. It’s both fast and easy to switch from one branch to another. This speed enables you to simultaneously work on two or more features without fear of one breaking the other.

Mistakes are easy to fix. Changes are easy to manage. Most importantly, Git makes coordinating with multiple people simple and clean.

Behind all this power is a complicated piece of software. Entire books have been written for some of its more advanced features. Its basics, however, are easy to grasp. Commands such as push, pull or merge are easy to figure out with a quick google search.

GUI tools make the process even easier.

he main weakness of Git is that it only saves your files on your computer. A problem if you end up with a failed hard drive.

This is where GitHub comes in.

Screenshot of Github Features Website

GitHub Is At The Center

In simple terms, GitHub is a central location that holds all of your code. It provides a single location for every person on your team to get the most recent version of your code. With Git – it also provides an easy place to send all of your changes to.

But GitHub provides more than that.

Although it is possible to make your repositories private – GitHub, by default, makes them public. That means that anyone can look at your code and provide helpful advice or even contribute to it themselves.

And so can you.

GitHub is home to millions of repositories including massive projects like the Linux kernel. Although you won’t be contributing to anything big like that anytime soon. But GitHub IS filled with smaller projects that you CAN contribute to. Even small changes can make big impacts.

Having access to this much source code provides another benefit. Go into a big repository and explore the source code. Read through it. Try to figure out how it all connects together. Maybe even grab a copy of it and try to make a minor change on your computer.

I guarantee that you will become a better programmer by using GitHub to its full potential.

Where to Find Python Freelancing Gigs

Where to Find Python Freelancing Gigs

Like with writing and film, coding has its own freelance gigs. The demand is very high everywhere so once you become more experienced, you shouldn’t have much trouble finding work. Like everything else, it has its advantages and disadvantages.

No matter if you new to Python or if you’re an experienced programmer, freelancer jobs could be a great way to make some extra cash. It allows you to be flexible, to test your skills and to earn more experience. For some, it might actually transform into an actual career. If this makes you’re curious, check out these sites to find you next Python freelancer gig:

Upwork

screenshot of upwork
Screenshot of Upwork

Upwork is currently one of the top freelancing websites for everything from writing to coding. It is formerly known as E-lance and oDesk and is based in Mountain View, California. It is currently operating in the U.S. and U.K. only. The site allows for clients to interview potential freelancers in real time and for freelancers to track their time on a timesheet application. They have received four out of five star ratings on most review sites. However, there have been some complaints about the site not being the easiest to use.

Freelancer

Find a job as a freelancer
Screenshot of Freelancer

Unlike Upwork, Freelancer is a global crowdsourcing site based in Sydney, Australia. In other words, instead of direct client/freelancer interaction, the clients have a large net of potential freelancers who can give them ideas. The best one wins. On Freelancer, you bid for projects and get it if yours is the closest. There also plenty of contests with prize money available. The only disadvantage is that the site takes a 10 percent fee, which is reduced to five with a paid membership. Website Planet has ranked it number three.

Indeed

Find a job as a freelancer on indeed
Screenshot of Indeed

This famous job search site can lead you to many stable jobs with legitimate companies. It is co-headquartered in Austin, Texas and Stamford, Connecticut. It is a global site with availability in 60 countries and in almost 30 languages. You can land positions such as data entry and claims specialist. It can also lead you to some positions directly involving coding. With a site like Indeed, the possibilities are endless.

Flexjobs

Freelancer jobs on Flexjobs
Screenshot of Flexjobs

Flexjobs is a job board that offers jobs on a flexible basis. This includes work at home, part-time, and freelance jobs. They are headquartered in Boulder, Colorado. Jobs come in from company websites and employment agencies. Unlike most sites, they are screened before being allowed to be listed on the site. Flexjobs’ definition of “flexible” is very liberalized. Some jobs are 100 percent work-at-home, some only partially so, and others require you to report to a brick-and-mortar location. It is a top site for those who prefer to work from home. The only disadvantage is that there’s a small subscription fee. It has four to four and a half stars out of five on most review sites.

When it comes to finding a freelance job, or any job, it is good to throw your net wide and not to limit yourself too much. These days, coding is in very heavy demand and will probably be so for quite some time to come. Again, just be cautious and always look out for your safety when searching for work. As a coder, it shouldn’t be too difficult for you to find work.

top 3 python books

My Top 3 Python Books

Since Python is made to accommodate all ranges of projects, including functional programming, it is known for being dynamically typed. It is often joked that it is a “batteries included” program because of its comprehensive library. The current editions are 2.7 and 3.0. The former’s shelf life is expected to extend into 2020. 3.0 is not completely interoperable with 2. Python 2 also doesn’t yet run unmodified Python into 3.

Learning Python can actually be easier than what you’d expect. There’s no need to pay for an expensive bootcamp. A good old fashioned book can actually help you get started as well. Here are my favorite books to learn Python.

My Top Three Python Books

Automate the Boring Stuff with Python: Practical Programming for Total Beginners

automate the boring stuff with python

This book knows how to get back to the basics and explains everything very simple. Better yet, it’s written in a reassuring manner telling you that you don’t need to go through the painstaking work of learning all the library functions, syntactical functions, etc. All you need to know is enough to start with some basic programming. It also reassured that crashes don’t destroy your system, it’s just a sign that you’ve encoded something that it doesn’t understand so there’s no need to fear mistakes. It was published in 2015 so some of the information is a little outdated.

Furthermore, it doesn’t repackage its tutorials so you don’t need to worry about gaps in your coding education. The second part gives you real-world application examples without skipping over anything. Many novice programmers are confused as where to go after their introductions or even know how to apply their skills from there. That’s why Automate the Boring Stuff emphasizes learning by building.

Learning Python, 5th Edition

Learning Pyhton 5th edition book

This is based on Mark Lutz’s old training course. This is ideal for both novice and experienced coders. However, it is not introductory and is like four books combined into one. Like Automate the Boring Stuff, it reads like smooth English, like someone is actually talking to you. It comes with its own quizzes, exercises and illustrations. It is a self-paced manual for versions 2.7 to 3.3. Unlike some other books, this one explains all of its code samples. It’s long but very fast-paced.

Learn Python the Hard Way, 3rd Edition

Learn python the hard way book

This is by Zed Shaw. It’s also up-to-date. One of the best things about this is that it walks you through the steps one at a time. It also shows you how to easily correct your mistakes. Again, however, don’t beat yourself up if you do make one occasionally. You need to be careful to type the code precisely and there are no shortcuts with copying and pasting. Here, you’ll learn everything from organizing and writing to basic game and web development. The reason this is titled what it is is that it often seems very difficult initially. But with a little practice, you’ll get it.

The three books I’ve described above are considered to be the best in teaching coding. What they have in common is their simple language and making the process easy to understand. They also don’t contain the gaps or loopholes that many coders complain about.

How to Get a Job as a Self Taught Programmer

It is no secret that applying for a job can be nerve wracking. Even for people who have the best backgrounds for job listings, such as a great education, long years of work experience, volunteer work etc. In the programming world, jobs are growing 50% faster than the overall market. Most people think that with the competitiveness of programming jobs, one must have a degree to get a programming job. Well, we would like to debunk that myth and let you know that it is very possible to get a job being a self-taught programmer. Here are some tips and tools on landing the job you deserve without a degree.

Programming mobile software isometric icon, development application of mobile phone, digital data visualization, abstract illustration for digital technology vector

Know yourself

Gauge your skill set and how much you know and apply to jobs that match your skill set. You should be prepared to defend what you put on your resume. In other words, you should be able to prove that you know what you say you know. Since self taught programmers don’t have a transcripts for the courses they’ve taken, you should be able to explain how and why you’ve created things as a self taught programmer.

Learn a programming language

The first step to learn programming is to learn the language. There are several resources available that teach programming language, such as books, webinars, and podcasts. You can figure out what kind of language you will like to learn by narrowing it down to interest and career goals. Python is usually recommended for someone new to programming since it is easy to read like the English language.

Be open to work as a freelancer

There are several websites that offer freelance work for programmers. Usually companies are more prepared to take the risk of employing someone with little to no experience and no degree when they are independent contractors for the company. Websites such as Upwork and Freelancer have several projects that pay a salary from $25 to $10,000 per project. With each completed project you have the unique opportunity to work your way up to better paying projects whilst building your work experience.

Build a portfolio

You will need to prove you know what you know and the best way to do this is to build a portfolio. This goes beyond a resume to display your experience. Having a portfolio gives you opportunity to show of your work, talk about your skills, highlight your accomplishments and give past clients the opportunity to leave testimonials on your website. You can build a portfolio by starting a blog or creating a website which lists your skills and training. Add all the exciting projects you have worked on and showcase your accomplishments on your personal blog or website. This is an opportunity to shine brightly using your platform. Sometimes employers may also want access your skills at coding. Having a public code can give them the opportunity to do this. Your skills will become more evident and this will evidently give the employer more confidence to hire you.

Network

Even though networking can be sometimes intimidating, you will need to go out of your comfort zone and be open to helping and connecting with other people in order to land your next programming role. Build your professional platform, create relationships and connect with other people. This could be people from your own network, from previous jobs, and schools or new people you have never met. Everyone you meet can help you land your next role as a programmer. Each connection is valuable in your job search. Networking is key to landing your next role. After all, about 85% of open positions are filled through networking.

Train some more

As you network, you will realize that you may need some skills that you may be lacking for the programming market. Knowing the skills that you don’t have gives you advantage because you can always go back to learn them. Don’t stop training and don’t stop learning. Stay current with the new skills in the programming market.

Master your technical skills

As part of your interview, employers would like to assess your technical skills. This is another opportunity to showcase your skills. One way to prepare for the technical skills assessment is read books on programming and time yourself when doing projects. As a programmer, you have an unlimited amount of time to work on your projects. During the interview however, you are timed, because the employer would like to know how you work under pressure. So practice how to work well, when you are timed and under pressure.

Sell yourself

Don’t be shy to sell yourself. Identify your strengths and talk about them. Also mention some of your weaknesses and mistakes you made in the past, and how learning from those mistakes have made you a better programmer. When you get the opportunity to be invited for an interview, you have to look the part. Dress professionally in clean and appropriate attire. Your body language, such as you hand gestures, eye contact, tone of voice and posture reinforce what you’re selling. Develop an elevator pitch and prepare meaningful anecdotes for conversation. Do your research about the company. Find out which technologies they are currently using and how you can help him. Everything counts! Your interview starts from the moment your interviewer sees you, from the moment you walk into the interview room, whether it is in person or via web cam. Also don’t forget to ask questions. Ask unique and memorable questions that will help distinguish you from other candidates.

Landing a programming role without a degree is easier than you think. Work hard, believe in yourself, polish your skills, create your website and portfolio and get out there! You’ve got what it takes to land your dream job as a programmer

Seattle City

3 Best Python Meetups in Seattle

This article focuses on the popular programing language, Python and its use among programmers. If you are looking to learn more about Python and several Python meetups in the Seattle area, we invite you to sit back relax and enjoy this article as we take you through a brief synopsis of what this program is all about.

Python is a fast and simple programming language that was created by Guido Van Rossum. It was first released in 1991. Python can be used for mathematics, system scripting, developing web applications, websites, software development and desktop Graphical User Interface (GUI) applications. It can also be used to create workflows, rapid prototyping and can be used to connect to databases.

Why Python?

According to the latest Tiobe programming index, Python ranks number 3 in the top popular programming tools in 2019. Python focuses on user readability. Unlike any other programming tool, it has a simple syntax that is easy to comprehend because it uses the English language instead of commas. Its simplicity allows users to express concepts without writing additional codes, as compared to other programming languages. Prototyping with python is very quick. Codes written with Python can also be executed as soon as they are written.

There are several groups dedicated to teaching the concepts of Python in the Seattle area. Below are some of the top rated Python meetups in Seattle that anyone with a yearning to know more about Python can join;

Puget Sound Programming Python aka Puppy

This is a public group that currently has over 8000 members. It is a fun and friendly group dedicated to rapidly grow a talented and diverse community of people from different walks of life. Meetings are held in the Puget Sound region, in Seattle. The mission of this group is to help members increase their understanding of Python programming and help them to achieve their professional goals. During group events, members practice several python programming skills and learn how to interview properly.

Redmond Python

Whether you are a seasoned programmer or beginner this is a public group that is open to anyone who is interested in learning more about the Python Programming language. Group events are fun and exciting and geared towards sharpening the programming skills and knowledge of members. Members have the opportunity to bring their Python projects to get help from more experienced python developers. Presenters during the events can also showcase their work and new projects to the group.

Seattle Pyladies

With almost 2000 members, Seattle Pyladies is an international mentorship group that is dedicated to providing friendly support to ladies (or those who identify themselves as such), to become skilled developers and leaders in the python community. During group events, members learn several python hacks and present projects. They are currently located in the Puget sound region in the Seattle area. They also welcome men at their meetups (Pyladdie allies). Their mission is to educate and advance a diverse Python community through their events and social gatherings.

These python meetups among several others, have greatly served the public in learning more about python programming. Python is a phenomenon in the world of programming. Several developers have benefited substantially from this programming tool.

Mistakes to Avoid When Teaching Yourself Programming

Learning to program requires learning a new language. Now, that doesn’t mean you will have to dust off your old Spanish textbook, pick up Swahili or memorize the roughly 3,000 to 4,000 characters needed to be literate in Mandarin Chinese. Instead, it will require a programming language, such as C++, PHP, Swift or Python.

Just like learning a new spoken language, learning a programming language can often come with some difficulty. There’s the beginner’s adjustment period where they’re starting from scratch to learn the basics of their new language, often stumbling along the way. Then, of course, there is the dreaded plateau period that afflicts more intermediate to advanced students who don’t seem to be able to use the language naturally or smoothly, but may know a lot of vocabulary. In the programming world, the same is also true and there are some common mistakes you’ll want to avoid. We’ll look at the two most common mistakes and some self taught programming tips below:

Mistake 1. Not Learning from your Mistakes

How Ironic! The first mistake involves your mistakes. Well, it’s true for both learning programming languages as well as learning Chinese. In fact, it really is a pretty universal mistake covering all subjects. The fear of even making a mistake let alone being in the right frame of mind to learn from it, is what holds a lot of people back from learning new things. In this case of coding, you’ll want to stay on top of your mistakes when learning programming as much as possible. Mistakes are easy to make when the code is case sensitive. You’ll want to watch out for capitals where they should be lowercase or the dread O vs 0. That’s the letter verses the number, in case that wasn’t clear enough. So you’ll want to check your work often to make sure it’s working instead of having to sort through it all at the end of hours and hours of hard work. You’ll also want to learn from your mistakes. Plenty of developers and programmers have written bad code. If you refuse to address that and correct it, you’ll waste a lot of time and energy and may even be looking for another job. Learning to correct and learn from your mistakes can become a real asset to your programming skills and when you’re just starting out learning, not being afraid to make the mistakes in the first place can really boost your learning and progress in coding.

Mistake 2. Expecting Fluency

Fluency is a debated term among language learners and linguists. What does it even mean? Is the traveler who gets by without hardly any trouble at all, but couldn’t read a newspaper to save their life, fluent? Is that person’s opposite, a scholar who can read 10,000 Chinese characters, but can’t order takeout,? Expecting to be perfect or to reach an end goal of never learning again after that is a common hindrance in learning anything, especially languages. Such is the case again with programming languages. Expecting to reach a point where you will be effectively fluent or perfect in a programming language will lead to wasted time and ultimately disappointment. There will always be new developments and emerging technologies. There are trends in this industry that can come on as quick as they fade away and what you know now may become obsolete in the near future. You want to foster a love of learning and you’ll want to make it a lifetime endeavor, as well. When you’re just starting out, you can easily fall into the trap of studying or reading more than you’re actually living in these languages and having hands on experiences. You want to live in these languages and with programming that means starting to code from he beginning. This is how you will learn by doing and making mistakes and learning from hem. Starting out, it’s just as easy to feel like an imposter and that can prevent you from seeking a place in the programming community for yourself. You’ll want to reach out, though, as this can lead to opportunities and help you progress in your learning much faster than if you stay solo on this learning journey.

Learning and making mistakes is a part of life. They go hand in hand and it is their very symbiotic relationship that is what leads to the fastest and most efficient learning. We all know someone who took Spanish in High School and can’t even pronounce Chile Relleno, let alone order it at a Mexican restaurant. We may very well be that someone, but it doesn’t have to be that way, if we are willing to accept our mistakes and learn from them and push past them. To code with ease you want to dive in and learn from those mistakes and you want to set yourself up for success by having the right expectations and learn to live in these programming languages.

Review of TeamTreeHouse Python Basics

Are you looking to get into coding, but don’t know where to start? Are you looking for the first steps to get your feet wet in a new field, or, do you already know a programming language but are simply wanting to add to your growing repertoire? Well, then look no further than the Python language.

With it’s elegant and easy to read code and with a very bright future in the industry, learn Python and you’ll be ahead of the curb. As an easy to learn object-oriented language, not only is it a great first language to study but it can help you learn other codes or even enhance your current knowledge base. It is also quite a lucrative addition to your resume, with major companies using it like Google and Disney. Some of your favorite movies use it to enhance their special effects! The averages salaries are very competitive, as well. Many new websites use it now and it can give you a serious advantage in the fields of the future, such as Artificial Intelligence. Really, Python is a language for everyone from the beginner to the professional.

The Python online course at Team Tree House is an excellent way to pick up all the fundamentals of the language. With no prerequisites required to start, you’ll quickly progress from novice to writing code for your own application, in no time at all. In the course, taught by developer Craig Dennis, you’ll study fundamental programming concepts like scripts and syntax, input and output, conditional branching, loops, exception handling and so much more. Along the way you’ll have a hands on experience learning to code with confidence. It’s an exciting way to learn, when you’re not buried nose deep in a textbook, but are actually getting to code your own projects. You’ll get to see first hand how the language looks and feels and you’ll learn from your mistakes along the way. This course is a great way to get your start in coding and to build a foundation in the Python language.

Whether you’re looking to boost your career or just getting started, the Python language is a great place to start. It can lead to many new opportunities in some very exciting jobs. The best part is that the Python Basics course makes it easy to learn Python online and you’ll be on your way to coding faster than you think. So what are you waiting for, check out the course here for more information.