Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Marketing #177

Open
alexmojaki opened this issue Sep 11, 2021 · 6 comments
Open

Marketing #177

alexmojaki opened this issue Sep 11, 2021 · 6 comments
Labels
discussion Looking for ideas and opinions help wanted Extra attention is needed

Comments

@alexmojaki
Copy link
Owner

I recently posted futurecoder to reddit and the result was very disappointing. This issue is to discuss how to make future posts on other sites (e.g. Hacker News) more successful, and more broadly how to market futurecoder effectively to reach potential users and contributors. This is really critical and I'm way out of my depth here so I really need help and advice.

Here's the marketing bigger picture as I see it. There's a huge number of free online resources for learning Python for beginners. The market is completely saturated. If you google futurecoder or future coder then that works, but I don't think there's any hope at the moment of people finding futurecoder if they don't already know about it. Showing up in generic search results seems completely out of reach for now and I can't imagine what SEO would accomplish.

I don't really know how to realistically get users and recognition. One way I can imagine is to get mentioned in prominent blogs and articles like "Top 10 ways to learn to code for free" or social media posts of people with lots of followers. Similarly it'd be great if educational organisations decided to use futurecoder for teaching. So I'm hoping to generally attract attention and get people to notice and be impressed by futurecoder and hopefully a fraction of those people will be prominent figures that can help push it further.

So I'm a bit confused about my target audience. My actual users are supposed to be novice coders, but they're not really the people that I want to get talking excitedly about futurecoder. And I don't know how to find the people I probably need to reach or get them to pay attention. I want to reach people who will think things like:

  • I should recommend this over other learning resources.
  • I should use this to teach.
  • I like the vision and the approach of this project, I want to contribute to it.
  • I should share this with my friend who's interested in coding education, maybe they'll do one of the above.

An important paradox to note: While reaching teachers and institutions is good, a major goal of futurecoder is to enable people to learn on their own without needing external help. For example, users can always access the solutions to exercises, which is obviously a problem in some classroom environments.

When posting to reddit or HN, it gets more complicated still. There I think the priority is to maximise upvotes so that the post reaches the top and stays there for a while, improving the chances of it being eventually noticed by someone who might make a real impact. So I'm aiming for mass appeal. Factors in that:

  • Visitors have all sorts of interests, only a fraction care about education.
  • It's easier to engage people with something that's directly useful/interesting to them rather than an opportunity to help others.
  • Regular visitors of r/Python probably already know Python or have already picked a method to learn it. A few people may come to r/Python looking for resources to start learning, but trying to catch people on their first visit doesn't sound like a good strategy. From the comments it seems I did do that though, which was a pleasant surprise.

With that in mind, here's a breakdown of what I was aiming for in the reddit post title:

I built futurecoder: a free interactive Python course, including an IDE with enhancements useful for any developer or teacher, all running in the browser

  • "an IDE with enhancements useful for any developer": trying to sell it to all readers as something they can personally benefit from even if they're experienced programmers. Birdseye, Snoop, and the enhanced tracebacks are all genuinely useful and unique tools and the IDE makes them super convenient. I clearly failed to communicate this as a selling point completely separate from the course but I don't know how to balance that with keeping the title short. Here's how I expanded it in the 'body' comment:
    • Useful for anyone: You can have the above without having to look at the course. IDE mode gives you an instant scratchpad to write and debug code similar to repl.it.
  • "or teacher": keeping in mind the paradox mentioned earlier, the point here is that the IDE is useful in a classroom even when separated from the course, so teachers can use futurecoder to teach their own syllabus.
  • "all running in the browser": was meant to catch people's interest from a technical/academic perspective, as in "how did he do that?" and "how can I do that in my project?" even if they don't care about education or the IDE.

Questions to discuss:

  • Which target audience(s) should I prioritise?
  • Which benefits/selling points of futurecoder are:
    • Most relevant to the target audience?
    • Most exciting?
    • Easiest to explain concisely?
  • Based on the above, what would the ideal post title be?
  • More generally, what should I be doing to promote futurecoder? Note that I'm feeling a bit burned out by futurecoder at the moment and I'm finding it hard to continue investing time/energy. On the other hand, I am willing to spend a bit of money.
@alexmojaki alexmojaki pinned this issue Sep 11, 2021
@alexmojaki alexmojaki added discussion Looking for ideas and opinions help wanted Extra attention is needed labels Sep 11, 2021
@anaisconce
Copy link

If you have a little bit of budget, Google Ads on search terms would be a good way to go! You don't have to invest time in SEO, you just bid for the ad spot at the top of search results. You can also test different ad copy to see which words work best, then construct social media post titles based on those results.

Also, experiment with not including the audience in the title so no one opts out if they think it's "not for them". Maybe they don't consider themselves a developer yet, or maybe they're active in the teach-yourself-to-code space, but don't consider themselves a teacher.

Finding influencers is a great idea. I just looked at YouTube real quick, but there's so many platforms to dig in to. Short list to get started! 🚀

https://www.youtube.com/user/programmingwithmosh
https://www.youtube.com/channel/UCxX9wt5FWQUAAz4UrysqK9A
https://www.youtube.com/channel/UCdngmbVKX1Tgre699-XLlUA
https://www.youtube.com/channel/UC2UXDak6o7rBm23k3Vv5dww
https://www.youtube.com/channel/UCAxnMry1lETl47xQWABvH7g

@alexmojaki
Copy link
Owner Author

Also, experiment with not including the audience in the title

I'm scared to experiment with anything in these posts. I feel like I have to get it right the first time. If I post repeatedly I'm worried I'll be flagged for spam.

Also, what does a good title that doesn't include an audience look like? I can't see what that would mean.

Finding influencers is a great idea.

Any advice on how to get a shout out from them? I don't know how to get people to not dismiss my emails, especially if I'm asking for something from them.

@anaisconce
Copy link

Experiment in google ads and see which ads perform best. If you have no experience with this, I'm happy to walk you through it!

A good title without an audience would be something like...

I built futurecoder: a free interactive Python course + enhanced IDE that runs in the browser

^ If this relevant to someone, whoever they are, they'll hopefully click to learn more.

You could also try a mini story.

I looked for a free, interactive Python course + IDE that works great in browser and found... nothing. So I built one: futurecoder

As for influencers,

  • Jump in the comment section and asking open-ended questions that invite discussion ( do you have a preference on debuggers? which and why? )
  • Ask them to partner in some way ( interested in creating a Python module on futurecoder? ).
  • Oooh, what if you took one of their free shorter courses and recreated it on futurecoder, making sure to credit them with the course content and provide a link to their main web asset (blog, youtube channel, whichever). Then show them the course via a comment, and invite them to make more of them.
  • Attend their webinars if they have them and be active.
  • Reshare their content.
  • Offer to guest post on their blog/course and have a pitch ready of what you'd focus on.

You don't need to do all of these, of course. Just ideas to try. It is time intensive. 😅

@sklzthtklz
Copy link

I recently posted futurecoder to reddit and the result was very disappointing. This issue is to discuss how to make future posts on other sites (e.g. Hacker News) more successful, and more broadly how to market futurecoder effectively to reach potential users and contributors. This is really critical and I'm way out of my depth here so I really need help and advice.

  • I feel like you're throwing a fairly wide net, and while that's not necessarily a bad thing, when you have limited resources (time, money for ads) you're better off targeting your marketing to the best candidates.
    A few questions that would help me:

  • Where do you see this project being in 2 years, best case scenario? IE do you plan to expand to other languages, etc.
    Who do you want using your product? Who are you targeting? If it's people new to coding, you won't find them on sites dedicated to coding, they don't yet know they exist.
    Do you have an age group you want to reach? A lot of people are making their first foray into learning a programming language later in life.
    Work out who it is you want to target, then from that you can determine where to find them and how best to get their attention.

  • What data analytics do you currently have in place? EG are you tracking how many people come to your site then leave without interacting? Or how many complete a lesson? Or how many times a particluar lesson is abandoned?
    Have you done any testing with new / experienced coders? Some user experience data would help us improve your product where possible. Do you have a learning space background?

  • Are you intending to make money off this?

Here's the marketing bigger picture as I see it. There's a huge number of free online resources for learning Python for beginners. The market is completely saturated. If you google futurecoder or future coder then that works, but I don't think there's any hope at the moment of people finding futurecoder if they don't already know about it. Showing up in generic search results seems completely out of reach for now and I can't imagine what SEO would accomplish.

  • Agreed on this, you would struggle to make much progress on this route

I don't really know how to realistically get users and recognition. One way I can imagine is to get mentioned in prominent blogs and articles like "Top 10 ways to learn to code for free" or social media posts of people with lots of followers. Similarly it'd be great if educational organisations decided to use futurecoder for teaching. So I'm hoping to generally attract attention and get people to notice and be impressed by futurecoder and hopefully a fraction of those people will be prominent figures that can help push it further.

  • Educational services that are paid won't use your service, because its goal is to be standalone, and their goal is to make money. What you could do is target their user base, look for courses related to your subjects,
    find a way to present yourself as a support for their existing framework. I think establishing a decent amount of popularity among people new to coding would be a good way to go about it

So I'm a bit confused about my target audience. My actual users are supposed to be novice coders, but they're not really the people that I want to get talking excitedly about futurecoder. And I don't know how to find the people I probably need to reach or get them to pay attention. I want to reach people who will think things like:

  • I should recommend this over other learning resources.
  • I should use this to teach.
  • I like the vision and the approach of this project, I want to contribute to it.
  • I should share this with my friend who's interested in coding education, maybe they'll do one of the above.
  • Contribution is a good idea, but people are more likely to do so if there's something in it for them. Have you considered creating projects on the site using the skills your course teaches? With some additional work you could also liaise with Linkedin to build a qualification / badge a person could add to their profile.

An important paradox to note: While reaching teachers and institutions is good, a major goal of futurecoder is to enable people to learn on their own without needing external help. For example, users can always access the solutions to exercises, which is obviously a problem in some classroom environments.

  • Again I think any paid organistion would consider you a competitor as opposed to a resource. Maybe pairing with a bootcamp as a primer?

When posting to reddit or HN, it gets more complicated still. There I think the priority is to maximise upvotes so that the post reaches the top and stays there for a while, improving the chances of it being eventually noticed by someone who might make a real impact. So I'm aiming for mass appeal. Factors in that:

  • Visitors have all sorts of interests, only a fraction care about education.
  • It's easier to engage people with something that's directly useful/interesting to them rather than an opportunity to help others.
  • Regular visitors of r/Python probably already know Python or have already picked a method to learn it. A few people may come to r/Python looking for resources to start learning, but trying to catch people on their first visit doesn't sound like a good strategy. From the comments it seems I did do that though, which was a pleasant surprise.
  • r/learnprogramming and similar are probably better opportunities than a place dedicated to python or established coders, since they are visited by those who already possess the knowledge you're offering.
    Have you considered adding a share function where people can, upon completing a task, share that achievement on their Twitter etc. I find them grating, but some people like to do so, and that's free advertising for you.

With that in mind, here's a breakdown of what I was aiming for in the reddit post title:

I built futurecoder: a free interactive Python course, including an IDE with enhancements useful for any developer or teacher, all running in the browser

  • "an IDE with enhancements useful for any developer": trying to sell it to all readers as something they can personally benefit from even if they're experienced programmers. Birdseye, Snoop, and the enhanced tracebacks are all genuinely useful and unique tools and the IDE makes them super convenient. I clearly failed to communicate this as a selling point completely separate from the course but I don't know how to balance that with keeping the title short. Here's how I expanded it in the 'body' comment:

    • Useful for anyone: You can have the above without having to look at the course. IDE mode gives you an instant scratchpad to write and debug code similar to repl.it.
  • "or teacher": keeping in mind the paradox mentioned earlier, the point here is that the IDE is useful in a classroom even when separated from the course, so teachers can use futurecoder to teach their own syllabus.

  • "all running in the browser": was meant to catch people's interest from a technical/academic perspective, as in "how did he do that?" and "how can I do that in my project?" even if they don't care about education or the IDE.

  • If you're trying to connect with people who don't have a coding background, this is too abstract to convey your purpose. Start with an ELI5 description of what you're offering, build on that, see what you come up with.
    Send me examples and we'll work through them. If I don't have any coding knowledge, can I get a job just knowing what your site teaches me? If not, what else do I need to know? Should I learn something before I try your site?

Questions to discuss:

  • Which target audience(s) should I prioritise?

  • Which benefits/selling points of futurecoder are:

    • Most relevant to the target audience?
    • Most exciting?
    • Easiest to explain concisely?
  • Based on the above, what would the ideal post title be?

  • More generally, what should I be doing to promote futurecoder? Note that I'm feeling a bit burned out by futurecoder at the moment and I'm finding it hard to continue investing time/energy. On the other hand, I am willing to spend a bit of money.

  • Your target audience is based on your product, and what your goals are with that product. What is your long term goal with this site? Are you planning to add other languages? Are you planning to monetise it?
    Gamification works better with some demos than others, are you open to a points / stars etc program that follows your progress through the material?
    I totally get feeling drained, you've made something to be proud of but you don't yet have the feel good component of a community using what you've created to better their lives, which I assume was one of your goals.

    I'm on board to help you build this out into something that resonates with people to the extent that they recommend it to others. Let me know what you think, what direction you want to go in, and we'll work from there.

@alexmojaki
Copy link
Owner Author

  • Where do you see this project being in 2 years, best case scenario?
  • Widely known and used
  • Lots of course content
  • A few regular contributors helping to add more features

IE do you plan to expand to other languages, etc.

I doubt I will ever expand to other programming languages. It seems that translating to other human languages might happen a lot sooner than I previously imagined, but it's not a primary goal to me.

Who do you want using your product? Who are you targeting? If it's people new to coding, you won't find them on sites dedicated to coding, they don't yet know they exist.

Well as I said, this is the primary paradox. The users are beginners. I think anyone* who wants to start learning programming should start with futurecoder before moving on to other resources. But I worry that having lots of beginner users will do little for the long term growth of futurecoder. No one cares about the opinion of some random noob. I want futurecoder to be noticed by:

  • People with influence, authority, and a network or audience so that when they share futurecoder it's a big deal
  • People with the skills and willingness to contribute.

*(anyone above a certain age, with access to the Internet and a compatible device, which generally means a physical keyboard.)

Do you have an age group you want to reach? A lot of people are making their first foray into learning a programming language later in life.

If they're old enough to read and understand a decent chunk of text with abstract concepts, and not so old that technology scares them, futurecoder is for them.

  • What data analytics do you currently have in place? EG are you tracking how many people come to your site then leave without interacting? Or how many complete a lesson? Or how many times a particluar lesson is abandoned?

No, I've procrastinated putting analytics in place.

Do you have a learning space background?

I don't know what this means.

  • Are you intending to make money off this?

No.

  • Contribution is a good idea, but people are more likely to do so if there's something in it for them. Have you considered creating projects on the site using the skills your course teaches? With some additional work you could also liaise with Linkedin to build a qualification / badge a person could add to their profile.

I don't follow. You're suggesting creating 'projects' centered on contributing to futurecoder? People would receive a qualification in exchange for fixing an issue or adding a feature?

Have you considered adding a share function where people can, upon completing a task, share that achievement on their Twitter etc. I find them grating, but some people like to do so, and that's free advertising for you.

Thanks, I'll consider this.

If I don't have any coding knowledge, can I get a job just knowing what your site teaches me? If not, what else do I need to know?

No, futurecoder is only for getting started and developing a good foundation, being qualified for a job takes a lot.

Should I learn something before I try your site?

No, no background knowledge is required.

  • Your target audience is based on your product, and what your goals are with that product. What is your long term goal with this site? Are you planning to add other languages? Are you planning to monetise it?
    Gamification works better with some demos than others, are you open to a points / stars etc program that follows your progress through the material?
    I totally get feeling drained, you've made something to be proud of but you don't yet have the feel good component of a community using what you've created to better their lives, which I assume was one of your goals.
    I'm on board to help you build this out into something that resonates with people to the extent that they recommend it to others. Let me know what you think, what direction you want to go in, and we'll work from there.

Gamification is discussed in #90

In general it feels like you're mostly talking about attracting users i.e. beginner coders. Obviously having lots of users and making their lives better would be great and that's the ultimate goal, but I don't see how trying to find/reach them directly myself will help much in the long term. How much impact would word of mouth from beginner users have? How would this lead to experienced coders finding out about futurecoder and becoming contributors?

@oskarissimus
Copy link
Contributor

It's interesting, I know it's been a while since last activity in this thread, I wonder how would You @alexmojaki summarize changes from then? Someone asked about 2-year plan, and I wonder how much of that is achieved? Are you still struggling with marketing? What about analytics? Sometimes it's suprising how much we can learn from how people are interacting with website.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
discussion Looking for ideas and opinions help wanted Extra attention is needed
Projects
None yet
Development

No branches or pull requests

4 participants