Welcome to the seventh part of 14 Steps To A Career-Boosting Portfolio Interactive Course - we're now well under way to have great portfolios!
If you missed it, read the announcement here!
Table of Contents
- Introduction - Why Should You Have A Portfolio?
- Start Your Portfolio Faster With Hugo
- How To Present Yourself In A Portfolio?
- How Do You Publish Your Site Online?
- Yes, It's Time To Write Your First Blog Post
- How To Polish And Publish Your Blog Post
- Guide To Spreading Your Online Presence
- An Introduction To Building Your First (Tiny) App
- Ideate And Choose A Stack For Your App
- How Do You Analyize And Plan An Application?
- A Guide To Project Setup Using Web Technologies
- Getting Your Little App From Idea To Realization
- Show Your App To The World By Deploying It
- A Few Words About Maintenance And A Goodbye
Lesson 7 - Guide To Spreading Your Online Presence
Building your online presence is a lot like showering - you've gotta do it AT LEAST a few times a week.
It's a process that doesn't end - you just kinda work on it all the time. When you upvote a StackOverflow question, or star a GitHub repository that you like, you're expanding your online presence. When you add or accept a connection request on LinkedIn, you're extending your online influence. Every little bit helps.
But, sporadical approach to spreading your online presence won't let you conquer the Internet. You need to employ a more focused approach, and I'll show you some techniques on how to do that. Over time - maybe a few months, maybe a year - you will see some great results. People will find you a lot more.
The reason you will want to put some effort into this is that the Internet is huge (as you probably know). To make a wave in the ocean of information, you have to be persistent, frequent and tackle a number of different mediums.
Your blog and portfolio are the center of your online presence, but they can't be the only ones you focus on. As we talked about in the previous lesson, you can't just put a text online and expect it to attract visitors. You've got to do some marketing on social networks and such.
So, what are some sites where you can spread your online presence as a developer? There's a whole lot, of course, but we'll cover 3 in this lesson:
- StackOverflow
- GitHub
StackOverflow
StackOverflow is like the encyclopedia of programming. Close to 50 million people open StackOverflow each day. That's crazy! Especially when you take into account the Evans Data Corp. report that estimates that there are around 18 million software developers in the world! It seems like more than half of people who visit StackOverflow are not professional software developers, but may be still studying to become programmers.
How can you benefit from this?
Well, for one, having an answer to almost every programming question imaginable helps you when get stuck with something. You just need to Google your question and dozens of links to StackOverflow will come up. The chances are that someone before you had that exact problem, and already got an answer on SO.
Apart from that, you can ask a question. There's a huge community that gravitates around this site. So much so, that the questions I asked there got answered in 15 minutes or less 90% of the time. And you can get an answer to a wide range of technologies - I've asked questions about C, C#, PHP and JavaScript in the past, always getting fast and correct answers.
Finally, you can answer someone else's question. Some questions are hard, some are easy. You can find a question that you feel you can answer, and do it!
What does all this activity on StackOverflow give you? In quantifiable terms, every time you do something like answer a question, you get points. The more points that you have on your profile, the better :) It gives an impression that you care about helping people, or are always hard at work asking the tough questions.
GitHub
You've probably heard about GitHub. It's amazing. It's a tool, but it's also more than that. It's a social network for developers.
GitHub is built on top of Git, a version control system. It provides a Git server to developers, so they can host their code on GitHub. The main reason behind GitHub's popularity is that they offer a free unlimited plan for Open Source projects. You pay only if you want to keep your projects private.
Because of this, GitHub has positioned itself as the de facto portal for Open Source projects. Through tools that they offer, people are collaborating and improving millions of projects every day. How many code is on GitHub? There are an estimated 13 million Open Source projects there!
A Brief History of Open Source - Important!
So, what's the big deal with Open Source? Well, you see, in the 1970s and 1980s companies kept their programs secret. They didn't want others copying their code and using it for themselves. And they wanted to charge a lot of money for the software they produced. Sounds reasonable, right? The thing is, that way you make progress very slowly.
Then some people had an idea that software should be free. That anyone should be able to take a program, and look at its code. Learn something from it. More and more people started to adopt this idea, and it spread fast through the Internet.
By the late 1990s, Open Source became popular. Software developers realized that they can build better things by building on top of other people's work. Also, it allowed more and more people to start programming without having to spend thousands of dollars on proprietary software like Web servers. You could just use the Open Source Web server like Apache that people created.
This sharing of knowledge and collaboration in creating Open Source software really changed the world. It put the power in the hands of developers instead of large companies. And GitHub helped make the Open Source movement mainstream.
Finally, as we use other people's work everyday to create our projects, we should give back to the community, and make useful stuff that we create Open Source.
Contributing to Open Source projects on GitHub
Please take a look at this article that explains how to contribute to a project on GitHub. It's a quick and easy read.
http://blog.davidecoppola.com/2016/11/howto-contribute-to-open-source-project-on-github/
LinkedIn is a professional network. You connect with your colleagues there. It's used a lot by recruiters to find people with specific skills. That's why you'll want to tidy up your LinkedIn profile. Recruiters are always on the lookout. It seems that a day can't pass by without someone sending me a request to connect or a message inviting me to an interview.
I accept the connection request, but politely decline their invitations to interview because I'm not looking for a new job right now. But it's always good to have people in your network. One day I decide I want to find a new job, I can just message the lot of them and get a dozen of opportunities in matter of days.
But the most important thing to do here is to make your LinkedIn profile look great. It's your online resume.
Quick Guide To LikedIn Profiles
- Profile picture
I see so many people get this wrong. You need to have a professional looking picture there. Please. Don't settle for a cropped photo from a night club. A friendly smile with a plain background is a good standard if you're unsure of how to take your picture.
- Summary
You can use the tagline from your portfolio. Add a link to your portfolio.
- Experience
This is the part that people usually look at the most. You should list your work experience so that your latest gig is at the top.
Don't worry if you have holes in your work history. There's nothing wrong with taking time off work to pursue your dreams, education, or to just plainly chill out.
Try to be as detailed as possible when describing your position and start and end dates. As for the description of the job - don't just glance over it. Take time to coherently state what you actually did at a certain company. Sure, it takes some practice to write fancy sounding work descriptions, but following a few rules will get you a long way.
- Always use bullet points (like this! :D)
- State what your responsibilities were (e.g. "I implemented the interface of a web app")
- State what the results of your efforts were (e.g. "Through my commitment the project was completed before due date")
- Skills
This is the part LinkedIn is famous for - skills and endorsements!
Even though it's a nice feeling when someone comes and endorses you for a skill you listed, it's almost meaningless. It's not a reflection of your skills. Because you will mostly get endorsements from recruiters trying to warm you up for their pitch, or people you've never met, who expect you endorse them in return. It's really like a Facebook game. I poke you, you poke me.
Okay, forget endorsements. They're nice to have but useless.
But the list of skills itself - that's important. You don't want to list everything you know there. You need to prioritize. Choose about 10 skills that you find most important in your daily work, and put the 3 you most often use and have the greatest experience with on the top. People looking at your profile will look there to see if you fit the skill set they're looking for.
- Education
If you have a college, go ahead and list it. You don't have to list your GPA if you don't want to.
- Projects
This is another important part. List your side projects here. It's amazing to see someone who invests time in improving themselves this way.
- Recommendations
I'd say that recommendations are important, so get them if you can. The way you get someone to recommend you is simple: you write a recommendation for them first! It's like the game of endorsements, but recommendations hold way more weight. They are powerful the same way "Customer Testimonials" are powerful on sites that sell products - social proof.
Another Technique - Posting Comments on Blogs
This is a pretty underutilized area, but it can get you great exposure. Next time you read a blog post on some topic, go to the bottom, and leave a comment! Most sites allow you to include a link to your website in the comment profile. Now, whenever someone reads the blog and goes in for the comments, they will see what you had to say. In a way, you're piggy-backing on other blogs popularity to channel some of their visitors to your site.
The catch is this - you need to write comments that are helpful to other people. So much that they will want to check out your website to see what else you have to say. A simple "Great post!" won't cut it. You have to contribute to the discussion in some way and provide value to others reading the post.
You'll also want to target popular sites. Blogs that you know get a lot of visitors.
You should aim for leaving one constructive comment each day. It's really not that hard. You read a blog post, think about if there's something important to add, if so post a comment, if not, move to another blog post!
Homework
Brace yourself, this will be a tough one! You've got stuff to learn and you've got to put yourself out there. Just do it! You'll feel great about it after.
- StackOverflow
Browse StackOverflow and try to find one question that you can answer. If you do, try to give a researched and informative answer. If not, that's okay, no worries.
Also, if you have a question that you didn't find an answer to on StackOverflow, go ahead and ask it! Questions also need to be well formed and informative. You need to tell people what is your problem, when does it happen, what did you try to solve it and possibly provide some code excerpts.
If you post a question or give an answer, send me a link to it!
Let's make your LinkedIn profile shiny!
Follow the advice in this lesson and update your online resume. If you need more guidance you can read a few nice posts on that matter:
- https://www.linkedin.com/pulse/20140708162049-7239647-16-tips-to-optimize-your-linkedin-profile-and-enhance-your-personal-brand
- http://www.socialmediaexaminer.com/optimize-your-linkedin-profile-for-more-exposure/
- GitHub
And finally, GitHub.
This might sound a bit intimidating, but do it anyway!
Find a small project on GitHub, and take a deep look. Then take a look at the list. You can try this out in a safe environment - by contributing to one of my projects. I'll check your contributions, and give you feedback.
Try to find some things that are missing. Then try to see if could do one of those things and actually contribute to that open source project.
If you don't feel like contributing code, you can still contribute. For example, you could add something useful to the documentation of the project. Or you could post an issue, or try answering an existing one.
Now, in order to change some files and contribute those changes, you'll need to know a bit of Git. So if you don't, now is a great time to get up to speed with basics.
To contribute, create your fork of the project, change some code, and create a pull request, as described in the text above.
Here are some repos that you can contribute to:
- https://github.com/petarslovic/jspolice
- https://github.com/petarslovic/reqs-lang
- https://github.com/petarslovic/smart-email-field
- https://github.com/petarslovic/ng-post-message
Take care and stay Open Source!
What's next?
In the next lesson we'll start working on a small app for your portfolio!.
Thanks!
Drop an upvote if you liked the article, share if you believe it will be of help to someone. Feel free to ask any questions you have in the comments below.
@OriginalWorks
The @OriginalWorks bot has determined this post by @petarjs to be original material and upvoted it!
To call @OriginalWorks, simply reply to any post with @originalworks or !originalworks in your message!
To enter this post into the daily RESTEEM contest, upvote this comment! The user with the most upvotes on their @OriginalWorks comment will win!
For more information, Click Here!
Special thanks to @reggaemuffin for being a supporter! Vote him as a witness to help make Steemit a better place!