CodeNewbie Community 🌱

Cover image for I’m Ben Halpern, Creator of Forem. Ask Me Anything!
Ben Halpern
Ben Halpern

Posted on

I’m Ben Halpern, Creator of Forem. Ask Me Anything!

Season 15 of the CodeNewbie Podcast is here πŸŽ‰

Throughout season 15, CodeNewbie will be hosting AMAs (β€œAsk Me Anything”s) with guests of the podcast β€” right here on CodeNewbie Community. Whether you have follow-up questions about how they achieved a big programming goal or you just want to know a bit more about who’s behind the microphone, CodeNewbie AMAs will be a lot of fun.

Since I’m kicking off our very first CodeNewbie Podcast AMA, here are a few things about me…

  • I’m the creator of Forem β€” the open source software behind dev.to and a growing number of online communities, including this one.
  • I began tweeting as @thepracticaldev in 2014 and promised myself I’d keep it up for at least 10 years β€” and here we are!
  • I have a dog named Ruby. Here’s a picture of her on Rails

Ask me anything below πŸ‘€

Top comments (26)

 
ben profile image
Ben Halpern

Cool! That's a really great type of business to be in when you are first getting started because it reduces the "all or nothing" trick of employment as a developer.

I did some of this myself, and I know @jess did too.

Here are some thoughts. They are not dependent on one another. Don't think you need to do all of these things, but some of them might work.

  • It helps to have a platform niche. I used to do Wordpress development and could position myself as an "expert" (even though I never really was). I mentioned Jess because she did Squarespace development and it followed about the same pattern. It helps to find newish platforms where there aren't as many entrenched experts. (I'm not totally sure that matters, but that's my gut).
  • Don't be afraid to take on small expenses. I used to run Facebook ads to find clients for my little freelance Wordpress business. It was a great source of leads and I think it added a small amount of legitimacy to the inbound leads. Don't just start spending money willy-nilly, but don't think that it is not an option to experiment either.
  • Charge what you're worth. Don't rip people off, but charge more than you think you should. You'll be treated better if you charge more, and it will let you sink your teeth into the work.
  • Build on your success as you go. The first project will be the hardest to come by, but as you go you can highlight your best work and use it to get the next client. Don't even link to your earlier or weaker work most of the time. Quality over quantity.
  • Try to offer painkillers and not vitamins. If you can specialize in a type of problem people are desperate to solve it's better than doing something that's more of a nice-to-have.
  • If you notice a demand for one particular type of work, focus on that, even if you know you could do all this other stuff. Take what you can get and build momentum around it.
  • Exude professionalism at every stage and treat your service with an "agency" quality. Sure, it might just be you, but being an "agency of one" can help you sell yourself. You can still put your name on the masthead in any way you want, but put your work and services front and center, not necessarily yourself.
  • Focus on delivering something new and fresh to every client, and then hustle your way to the next client. I said you should charge more than you think you need to, but you may also need to do free work just to get something under your belt (if you don't yet have the right stuff)... But use it all to create compounding effects, while constantly moving on to the next one.

Hope this helps! It's not easy, but if you commit yourself to this you will either succeed or you'll fail in a way that will help you towards whatever the big success ends up being. This experience will provide skills you can bring with you at every stage of your career whether as an employee or entrepreneur in the future.

Collapse
 
jscoder17 profile image
Jscoder17

You said to ask anything:

  1. How many chickens would it take to kill an elephant?
  2. Which body part do you wish you could detach and why?
  3. If peanut butter wasn’t called peanut butter, what would it be called?
Collapse
 
ben profile image
Ben Halpern
  1. 500... Or possibly infinite. Unless the chickens are particularly coordinated, there might be a bottleneck in terms of the damage they could inflict, even if there were many.
  2. Assuming they are useless when detached (i.e. I can't command my hand to crawl across the floor), I'd think detaching my legs could make lying across two plane seats or bus seats more comfortable.
  3. Nut mash
Collapse
 
jscoder17 profile image
Jscoder17

your amazing! LOL

Thread Thread
 
ben profile image
Ben Halpern

Keep up the jscoding

Thread Thread
 
jscoder17 profile image
Jscoder17

Your a legend! lol

Collapse
 
rachelombok profile image
Rachel Ombok

Thank you! Another question: When you launched Forem/Dev, what strategies did you use to rollout the site and attract users? I am in the process of making a social network site and I am trying to see viable ways to promote it and make it something bigger when I am ready to share it with people.

Collapse
 
rachelombok profile image
Rachel Ombok

What were the key steps you took in branding yourself online?

Collapse
 
ben profile image
Ben Halpern

Good question!

  • Publish helpful things. It doesn't have to be too often, but create a baseline of sharing solutions with the world. Link to the places you're publishing from your personal site.
  • Try and seek out a few key online relationships, not follower counts. Getting to sort of know some folks in the industry in an online way will lead to a healthier relationship with social media than trying to chase "thought leadership".
  • Don't over-design your personal website unless you're a brilliant frontend developer. If you're a newbie, try to be simple and minimalist.
  • Keep your personal brand active enough that someone can eyeball your presence and get a sense of where you fit in in the ecosystem, but don't invest any extra time unless it's bringing you personal joy. Ultimately you'll find your place in this career and your personal brand should work for you, not the other way around.

Btw Rachel I checked out your online presence and I think you're doing all of this really really well! Keep it up. You are way further along than I was at your age.

Collapse
 
ben profile image
Ben Halpern

Oh, I'll also add:

All else equal, your personal brand should be tailored to what you want to accomplish with it. If you want to get your first job, orient fo that. If you want to help others, orient for that. If you want to find mentorship, orient for that.

It will be more effective to have a goal and examine yourself from that perspective vs trying to just "have a good personal brand" without a detailed outcome in mind.

Collapse
 
ben profile image
Ben Halpern

Do you know what the business would be (approximately), but you're unsure of what some of the first steps would be, or do you have a general idea that starting a business is appealing, but you are not sure what area you'd want to focus in?

Collapse
 
jess profile image
Jess Lee

What was the hardest programming concept for you to wrap your head around?

Collapse
 
ben profile image
Ben Halpern

The easiest part of programming to wrap my head around has always been logic as it passes down a script.

One-file algorithms with an input and an output where I can trace the logic through the different contingencies has mostly been a challenge I've been up to since I began coding.

The more distributed the code is into its small independent chunks, the more I have trouble wrapping my head around the flow. If the architecture already offers sensible patterns for creating smaller objects, I can usually figure that out, but if left to decide for myself which objects to create and why, I have a hard time reasoning that out.


In web development it took me a longtime to really wrap my head around how the same page could look different ways at all, like how the data got from the database to the page. Even if this is kind of framework-specific, it just made no sense for a long time. Also cookies/authentication. Made no sense.

Collapse
 
yelitza87 profile image
Yelitza87

For example, for companies that value convenient and high-quality creation, booking and transfer of online meetings, I suggest paying attention to the best WordPress plugin motopress.com/products/appointment... for scheduling meetings. This is a new solution, quite convenient and understandable for clients.

Collapse
 
yelitza87 profile image
Yelitza87

Although sometimes it is enough to use already existing developments.

Collapse
 
rlisenko profile image
Rob Lisenko

Hi Ben, heard you on the podcast and really enjoyed how you saw learning to code as a way to enable being an entrepreneur rather than how to get hired. I too finished a Computer Science degree that left me feeling unwelcome, I felt mediocre and unnatural within the culture of that department, had 1 horrible interview after graduation and walked away from coding for many years.

I'm learning how to code in a new language but I have not begun "tending my code garden" of starting my code base for my business idea. I want to start #100DaysOfCode but it's like I'm waiting to get an A+ grade from the book of exercises I'm doing, I'm confused when I should jump in and have hesitating the past month. Any advice on the kinds of concepts or understanding one might look for before starting?

Collapse
 
alton_674 profile image
Alton

What do you expect your relationship with coding to be in the next decade?

Collapse
 
ben profile image
Ben Halpern

I hope I can fine the platform and freedom to take on more small, self-contained coding projects. Software maintenance and extensibility can be the 9th circle of hell sometimes.

Assuming best case scenarios for the next decade where I can find ongoing professional fulfillment in the form of letting my expertise go to work while also not taking on responsibility I do not have capacity to fulfill, I should have enough spare time on my hands, and I hope I can keep up the fun of coding while resisting the scenarios where I take on a new thing which commits me to a workflow I cannot fulfill.

Collapse
 
gracie profile image
Gracie Gregory (she/her) • Edited

What was your very first coding project?

Collapse
 
ben profile image
Ben Halpern

A fantasy sports website built on Geocities when I was in junior high. I was fairly blown away by the realization that making websites was possible. That helped me differentiate it from magic.

In a sense I started young, but I also didn't pursue the activity permanently thereafter. I kind of lost track of website building and/or coding until I was in my 20s and didn't recommit to coding for real until definitively after university.

Collapse
 
atulcodex profile image
Atul Prajapati

What is the future of Open Source?