Setting Up For Success
As part of its DAND program one of the "services" that Udacity provides is a Student Advocate program. Student Advocates are students who volunteer to promote the community aspect of being a student and help others with their questions and generally be a postive presence in our slack workspace. Each week Udacity also hosts AMAs (Ask Me Anything question and answer sessions - for the less tech involved of you - sister wave?) where hosts that have connection to Udacity and the work we are doing answer questions about succeeding in the program and career navigation. Last week, we, the Student Advocates hosted the AMA!!
One of the questions that came up was, "If you are looking to start a career in data science but don't have all the expected background, how can you better promote yourself to employers?" I ended up answering this question. On one hand, my answer is, "I don't know," because I haven't landed a job yet (focusing on the study side of things atm), but, I did end up answering the question. Because there are a couple of things I AM doing to try to improve my chances of success when I DO go job hunting, especially as someone who doesn't have a "traditional" background. (It's turning into a blog post because one of my fellow Student Advocates suggested a full answer could make a good one!)
Those are, this blog, and my github. You'd think, given I'm writing ON my blog, that I'd start there. But the github actually came first (and led to the blog), so I'm going to start there.
The GitHub Portfolio
One of the consistent messages that I hear from people that ARE employed in the data science industry is that what people REALLY care about, is your ability to do the work.
Qualifications can be helpful, but your best bet is to show what you can do.
How can you do this? GitHub is a great answer!
What is GitHub?
GitHub is an online hosting service and (from their website) development platform. It allows you to "host and review code, manage projects, and build software." In simple terms, for my purposes, if you work on a project and want to share the final results, GitHub is a great place to do that.
How to Get a GitHub account?
Basic hosting on GitHub is free, but if you want the free version, all projects you post will be public and available for anyone else to find (so keep that in mind when you are uploading work). Once you arrive at the page (you can click on the link above), there is a Sign Up link in the top right-hand corner. Once you've created an account, GitHub actually provides you with a little intro walk-thru that at least helps you set up a repository.
If you just want a place to store your projects so that others can see them, you CAN just create a repository (or "repo" as the lingo goes), upload your projects and then link to them in your resume/cover letter/LinkedIn profile. This is exactly where I started, and it was all I did with GitHub for a while.
Getting More out of Your GitHub
But if this is ALL you do, you are not taking full advantage of everything that GitHub can do for you. In my opinion (and it's not only my opinion), GitHub works best when partnered with a version control software. There are a bunch of them, but there's one that's called Git (see the connection?!) that works really well.
What's great is that Udacity actually has a course that teaches you how to use Git. I really can't say enough about this course. I felt like it introduced me to this 'secret coders world', and really gave me the tools I needed to confidently use what can initially seem like a hard to navigate system. One of the things that is said in this course (I think! If not, it's in the GitHub Collaboration course) is that while it's possible to do version control just using GitHub, there really is so much more power with Git.
Really Looking Like a Pro
The final element that I added to this was learning how to write READMEs. GitHub can make a README for you automaticaly when you initiate a repo, but at first, I didn't really know what to do with them. I took this tiny (it took me an hour to get through it) course (also from Udacity - I promise I don't get anything for linking to them, I really have taken them and I LIKED them!) on writing READMEs. Having completed the README course I finally feel like my GitHub portfolio presents the best professional version of my work possible.
Next Steps
One of the other things that you can do with GitHub is collaborate on other projects. "They" say that this is another way that employers can look at your work and see how you collaborate. Again, "they" say that the easiest place to start with collaboration is finding a project you like and reading through their documentation and seeing if you can contribute by making suggestions that make the documentation clearer for others to read. I'm not quite there on this one, but it's something that I plan to work on.
The Blog
The other thing that "everyone" seems to say is that a blog is a great way to promote/market yourself and add some personality and flavour to your presentation of yourself. How do you get started writing a blog?
Getting Started
There really are so many blog hosting services these days. You've got ones that are more focused on the 'regular' blogging crowd, ones that are more 'techy', and ones that can easily span both. This list of free services is by no means comprehensive regarding the options, just some that I know exist:
What I actually ended up going with was a blog hosted through GitHub itself. They provide one free website and you can host all of the code within a repo specific to the blog. This probably wasn't the FASTEST way for me to get a blog going, but I've ended up learning SO MUCH while doing it, and I'm incredibly happy with that.
Building the Blog
I used two different resources in setting up my blog. GitHub uses the Jekyll platform for hosting and I found a really great instruction page for helping you build a page with GitHub and Jekyll. It provides you with the specific content to replicate the original site that was made, but if you start with that, it's not too hard to work out how to customize.
However, I ended up being not quite happy with what was provided through the page (essentially I wanted my site to look "prettier"), and ended up taking this journey into building my own site with html.
I definitely didn't start from scratch though!
While working through the GitHub collaboration course, one of the things that they encouraged us to do was to go fork some other repositories and they gave us some suggestions.
Lo and behold, one of them was a very nice base format for a blog!
I ended up forking that repo, completely scrapping everything I'd been doing with Jekyll (for the most part), and going straight html.
This was a journey, because I hadn't done anything with html except add some new links on my organization's website.
But the same strategies that they've been teaching us for data analysis (google EVERYTHING, cos you can almost guarantee the answer is out there), apply to using html, and I've been building up the different elements that I needed to make my site functional.
My two most common resources for helping me build the blog are:
- w3schools.com: provides comprehensive html and css instructions (and comes up in the majority of google searches I make)
- HTML Color Picker: (which I didn't remember actually IS a w3schools resource) but gives you easy ways to find the code for the colours you are looking for
Eventually I learnt that there is some great functionality that is provided by Jekyll (I went back and borrowed a lot of understanding from that original instruction page) and now my site is a mixture of functionality provided by Jekyll while still being very html heavy (that was a pretty big migration project!). It still probably doesn't have everything it could have on it - there's a couple things that I do manually that I could probably find code to automate, and it could be good to allow comments on pages for more interaction, but I do like learning how to do these things, and I'll get there one day! (On the "one day list" is getting the html and css course done with Udacity! :P )
Oh, and I write the blog itself with Atom because I like its easy integration with GitHub.
What Do I Write About?
I think this is a really good question and can often feel intimidating. But I think there's a few questions that are even MORE important that help you answer this. They are:
- Why am I writing this blog?
- Who is my audience?
These might seem like the same thing, but they aren't quite. Here's how I answer those two questions. When I first started writing this blog it was for a very specific purpose. I was applying to a Masters program (didn't get in, sad days, but all is not lost) and knew I didn't have all the qualifications they were looking for. I started the blog as a tool that I hoped would help showcase what I was able to do while I was learning with DAND. But I also knew that in the long run, the blog could help me showcase myself to employers and so I wanted it to have more than just "these are my projects" as its content. I wanted to show something of how I thought about data analysis/science and let some of my personality come through. So that's the why.
The who might seem obvious from above, but let me clarify the difference. Although I wanted to use this blog to market myself, I also thought, "Who is ACTUALLY going to read this?" The only people that I was 100% confident would read it were my two sisters (definite sister wave), and so I decided to write for them. What does this mean? Well, my sisters are pretty intelligent folks, but neither of them have a stats background (in fact, they both kind of hate it). This meant that if I was going to write in a way that they were willing to survive reading through what can be some pretty dry content sometimes, I had to make it casual, lose a lot of the technical jargon, and not make assumptions about what they knew. What it's meant is that my posts a written like I'm explaining to them what I'm learning and doing, in a way that I hope that they will find interesting and understand. (Huge kudos to the one who survived my linear algebra posts, because those are EXCEPTIONALLY dry!!) I've ended up being really happy with this because I like the conversational tone that it creates within my posts. I think these days I sometimes write with my fellow DAND students in mind (like this one!) but the writing takes a similar tone.
With all of that in mind, here's what I end up writing about:
- Articles on issues that I come across that fascinate me: I try to summarize them and provide my own thoughts on the matter
- Podcast episodes: I listen to a lot of podcasts, and every so often some of them intersect with the world of data, again I'll summarize and add my own take when something really interests me
- Data visualizations: Good data visualization is just a topic of fascination for me in general; I like posting about what other people have done and why I think it's excellent
- My projects: Of course I post about my projects, it's an alternative source than my GitHub; sometimes I host the project exactly as is, sometimes I rework the contents specifically for the blog post
- What I'm learning: I believe in celebrating the steps in the journey and taking stock, so every couple of months I like to write about what I'm learning to remind myself where I have come from
- My Portfolio: This isn't a specific blogpost but I do use the site to host a summarized version of my project portfolio (you can check it out here ;) )
Of course, all of this is completely up to the person writing the blog. None of what I've done is "required" or even "recommended". I think everyone has to find their own tone for blogging, and, if it works for you, that is good! :)
I also give myself a goal of trying to write at least four posts a month (basically once a week). It's reasonably manageable, is a decent timeframe for encouraging people to come back and check out the blog every so often, and keeps me motivated.
Making it Pretty
Again, this is completely optional (and at least one of my friends cringes at my insistence on using stock photography), but there are some great free stock photography hosting sites out there!
- https://depositphotos.com/
- https://stocksnap.io/
- https://www.pexels.com/
- https://unsplash.com/
- https://freestocks.org/
are just some (they have different requirements for downloading/using the photos). But really, find ways to make the blog your own and something that YOU like.
And, finally, if you ARE reading this from DAND, feel free to say hi on slack some time!