Interview with Mark Saward, Lead Developer of Webpass.io from Melbourne, Australia
Alright, in this post for "Humans Of Programming World" series of interviews, we will now head south to Down Under. The aim of these interviews is to highlight the talent diversity in software engineering/technology world. Most of the interviews will be skewed towards Golang, but occasionally some post will be about developers using other programming languages as well.
Tell us something about yourself.
I tend to occupy my productive time with two things: philosophy, and programming/building. I've found that I love both of these things, so I try to spend some time on both. For the uninitiated, I think of philosophy as a disciplined way of simply thinking hard about something. For that reason, philosophy is something that touches on everything, and is something we all sometimes do. I've spent quite a few years studying philosophy.
As for programming, I enjoy building things. I particularly enjoy programming, but I generally enjoy building things up from the start, taking them from an idea to reality.
As for these days, I'm working on my own startup Webpass.io, a service for websites to offer a subscription-for-no-ads to their users that covers multiple sites rather than just one.
This how a philosophical Golang software developer's desktop looks like :D
Can you briefly tell us about how you got to learn and use Golang?
A few years ago, I was about to start a new project and thought I'd find out what the latest cool new tech was. As a result of that research, I came across Go, started using it, and stayed with it! One of the advantages of working on your own projects is you can choose what tools you use. So for now, I've found that Go is suitable for quite a range of projects, and I've been using it when I can.
Which feature(s) that you like the most in Golang?
Here's a few things that attract me to Go: concurrency, many important projects use it, easy to learn, can run a service easily without requiring a server like Apache. When comparing to a language like Python or PHP, I love the fact that it has static types, and is typically faster than such languages.
What advice or action that you would give or see to help foster diversity in Golang community worldwide?
I realise that there is a problem with diversity within technology overall. How to solve that, I don't really know!
It may be that more needs to be done to change the culture for children at a younger age to create a more diverse community -- give children the opportunities and resources to explore things like programming so they might maintain an interest when they finish school. This is, however, an empirical question, and one that I lack the data to answer well.
It may also be that we need to tackle other sources of inequality between groups and between countries to help give easier access to opportunities to everyone, as well as eliminate the subtle biases we each hold. For example, a native English speaker might sometimes unfavourably rate a non-native speaker simply because of their aptitude with English, when their aptitude with English actually tells you little to nothing about the aptitude of the individual for the task at hand -- in this case, programming.
Lack of diversity in many areas is a big concern and an area of active research which I don't know much at all about.
What are your advice to newcomers to Golang?
I can say what works well for me, and maybe that will help someone else! I found the Effective Go ( https://golang.org/doc/effective_go.html ) guide to be quite useful.
Generally, if I want to learn something new, I tend to just try using it. I learn best by actually doing things, so I prefer to not take too long before diving into making something. Think of a project, then try to make it with the new language!
Most of the current OS is written in C language. If you are going to create a new Operating System with Golang.What would you name your new OS?
GOOS, of course, pronounced the same as 'goose' ;)
What is the startup scene like in Melbourne or Australia in general?
I asked my friend Natalie Scollo to say a little about this for me! She's a co-founder for the startup Olivera ( http://www.olivera.com.au ) which is involved with growing the startup community.
"Melbourne's already growing startup scene is set to skyrocket with the ideas boom looming. There are many co-working spaces in the city: York Butter Factory, Inspire9, Collective Campus. In the university space, there is beginning to be a shift toward students wanting to start up something new. We can see this in the rise of involvement in accelerator programs, pitch competitions, seed funding available to students and startup meetups around campus.
We started Olivera because we wanted to mobilize the minds of future doctors, lawyers, accountants and designers to collaborate with entrepreneurs who are building businesses. It takes a community to raise a startup, so that what we're building at Olivera. It's why we started the Student Startup Community on Facebook - a space where students, based in Melbourne, can collaborate with other students on startups."
There are also some local hackathons to attend, and Monash University is just this year looking to support its students in creating startups (http://www.monash.edu/research/infrastructure/the-generator).
This is a decent sample of the things going on in Melbourne.
Do you think Golang will be become popular or become the language of choice for new startups in Melbourne?
In answer to this, I'll offer my opinion based on limited anecdotal evidence :)
I suspect that newer developers will tend towards something like node.js, simply because they'll be more familiar with Javascript on the front-end side. That being said, I think with many important projects using Go (docker/rkt, kubernetes, etcd to name a handful), these startups will run into Go once they try to make their infrastructure scalable, or when they try to set up a testing and continuous integration/deployment pipeline. From there, I think and hope it will sell itself!
I'll be doing my bit to let people know about Go.
Thank you so much for taking the time to do this interview!
Yes !! Mark does have a valid point there. Eventually, new startups will get expose to Golang's "radiation" via those scaling tools such as docker, kubernetes and etc.
NOTES:
Mark first "disrupted" me via my Android phone 4 a.m in the morning trying to promote his webpass.io solution.
There are three types of people in this world. People who ...
- Make it happen.
- Know what is happening.
- Ask what just happened.
As a startup co-founder, he is definitely not a shy guy in making things happen by sticking his hand into my soul, waking me up remotely to push his message across the ocean. A "hustling" quality that anyone working on their own startup should emulate. For now, he is working to balance the imbalance Yin-Yang between publishers and ad-blockers with his philosophical approach and skillfully cutting out advertisers. Hope to see more publishers will try out his solution.
See also : Fostering diversity in Golang community
By AdamNg
IF you gain some knowledge or the information here solved your programming problem. Please consider donating to the less fortunate or some charities that you like. Apart from donation, planting trees, volunteering or reducing your carbon footprint will be great too.
Advertisement
Something interesting
Advertisement
Tutorials
+8.6k Golang : automatically figure out array length(size) with three dots
+9.7k Golang : Use regular expression to get all upper case or lower case characters example
+7.8k Golang : Number guessing game with user input verification example
+21.3k Golang : Use TLS version 1.2 and enforce server security configuration over client
+20.7k Golang : How to get time zone and load different time zone?
+19.3k Golang : How to get own program name during runtime ?
+8.3k Golang : On lambda, anonymous, inline functions and function literals
+4.7k Golang : micron to centimeter example
+12.2k Golang : Listen and Serve on sub domain example
+16.2k Golang : read gzipped http response
+9.2k Golang : Detect number of active displays and the display's resolution
+9.4k Golang : List available AWS regions