Live data from Hacker News

The boring technology behind a one-person Internet company (2018)

broadcast.listennotes.com

231–240 of 464 posts

Re: The boring technology behind a one-person Internet company (2018)

#231
post #146

I really like the idea of monolithic repos but can see some downsides when there is more than one person working on a project. It would be cool if there was a simplified way to have an entire business operate under source control.

This interests me. Can you elaborate on what downsides you see? Even in a small team we're often working within the same repo at the same time without any issues.

The glaring issue would be permissions ie who can see what. Pull requests could get muddied up but that probably wouldn't be too much of a problem to overcome. Some foundational git protocols would have to be adjusted, like .gitignore.

I think it's a great way for start up to manage the business but as more people get hired the organizational complexity might be too much to bear.

Re: The boring technology behind a one-person Internet company (2018)

#232

I'd love to know how you're running Django and React together. I've been trying to figure out how to make that combo work in a mono-repo, and I'm definitely missing something. Any advice?

I'm also struggling a lot with django, react and the whole asset pipeline. On the other hand, frameworks like rails and laravel have it all figured out for you.

Re: The boring technology behind a one-person Internet company (2018)

#233
post #104
post #44

Earlier quoted context omitted.

as someone who has only worked on small teams, i thought this was normal. My current position is leading a small team, but we have interactions with a number of teams inside of FANG companies and it's amazing the limited amount of knowledge and access each position/person has. Most of my engineers can run circles around our partners. I always thought every engineer should know how to deploy a server, install deps, un…

It might take Alice 10 hours to do the sysadmin, 5 for the database, and 15 for the devops. Bob however can do the devops in 2 hours, sysadmin in 3 hours and database in 4 hours. Bob is of course more productive, but if you let Alice do all the DBA, then Bob will be even more productive, and the total output of your team will increase.

Ricardo strikes again https://en.wikipedia.org/wiki/Comparative_advantage

Re: The boring technology behind a one-person Internet company (2018)

#235
post #117

Earlier quoted context omitted.

(author of this blog post here) The hardest part of building this business is to keep motivated for a relatively long period of time. I'm still early in this startup journey. This is only the 2nd year of me working full-time on Listen Notes. I think it would be helpful to surround yourself with like-minded people (online or offline) -- we are social animals. Indie Hackers is pretty good: https://www.indiehackers.com/…

Why did you choose to have ec2s with postgres rather than using RDS? I've found it saves me a ton of time dealing with upgrades worrying about backups etc to have RDS handle it.

Not OP, but I set up a SaaS platform, and I also ran on straight Postgres (RDS wasn't an option, we weren't on AWS). In my experience, after setting up WAL-E to continuously backup to S3 and giving it plenty of extra disk space (for stalled WAL segments), it worked pretty well with no intervention. Restores occasionally took a bit, but they never failed (we managed a couple dozen databases over five years).

Re: The boring technology behind a one-person Internet company (2018)

#236
post #38
post #16

As someone still in school, this type of article -- though inspiring-- kind of scares me, to be honest. I don't think I could do any one of the things mentioned in this article.

Hello poidos, (I'm the author of this blog post) I couldn't do all these things when I was in school :) I worked in companies for a few years and learned some engineering practices. Then I had basic skills to prototype my own side projects. Then after working on many silly side projects, I started Listen Notes. And initially, Listen Notes was running on 3 tiny DigitalOcean servers ($5/month each?). I logged in each s…

I appreciate the response!! It is wonderful to hear about the evolution of your process, thank you :)

Re: The boring technology behind a one-person Internet company (2018)

#237
post #211

> Wait, how about Docker / Kubernetes / serverless? Nope. As you gain experience, you know when not to over-engineer. I actually did some early Docker work for my previous employer back in 2014, which was good for a mid-sized billion-dollar startup but may be overkill for a one-person tiny startup. I really think the key thing here is familiarity. K8s is a bit different, but certainly in OP's position I (personally!)…

There's nothing wrong with the concept of containerization and you can use it without much additional headache. Of course it's not for everyone but outright saying it's a waste of time hasn't spent much time with the ecosystem to know how easy it's become latey.

Yes, we're in agreement, I'm not saying it's a waste of time, I'm saying I'd be wasting time and fearful of touching anything without it!

Re: The boring technology behind a one-person Internet company (2018)

#238
post #30

First, that's a great stack and very well written/presented. One comment - he dismisses serverless as being overengineering . I think the correct POV, moreso for the single-man company, is that running a server to perform a task is the overengineered option. One can see from the snapshot the servers are indeed severely overprovisioned and underutilized. Building an api with api-gateway + lambda is less work than runn…

I think the correct POV, moreso for the single-man company, is that running a server to perform a task is the overengineered option. I was all gung-ho about serverless for a while. I wanted to release a demo for my product and thought I'd cut through all the hassles of managing my own server. I found it bewildering. It was a whole new skillset with new benefits, but also new considerations and headaches. When push ca…

I agree, the key here is that it's best to ship with what you know, rather than what is simplest on paper.

Re: The boring technology behind a one-person Internet company (2018)

#239

Earlier quoted context omitted.

How do you feel about using a dynamically typed language like Python for all your backend code? Whenever I had a codebase that grew past several thousand LOC it became pretty unwieldy pretty quickly for me personally. I'm curious if there's a conscious tradeoff for people using Python/Django to start because it's really fast to get up and running with (for existing or new devs).

I don't think typing is the problem you make it out to be. You can specify types in Python, and mypy will type check for you. And nothing about Python means you'll have an unwieldy code base, I can only imagine you'd have the same problems in Java. The real reason to switch would be performance. The interpreted nature of Python that makes things like Django and PyUnit possible also makes it kinda slow. Some places ch…

Completely agree, and I'd like to add that it should only be broken out when performance is actually a measurable issue and there's a good business case for it.

A lot of people get caught up on "x is slow, y is fast" and try to over-architect too early on, then end up focusing on the wrong parts of their product, and sooner or later the project falls apart.

Re: The boring technology behind a one-person Internet company (2018)

#240
post #82

I ran a small company like this quite successfully earlier in my career. If you think this is awesome what goes unmentioned is how lonely it can get. Also, any issues you have (business or technology) you bear the brunt of alone. A coworking space doesn't really help either imo, if you like working with others you will miss having coworkers. Just something I think worth mentioning if you think this is something you m…

My company's Slack is just me and ~12 Slack bots all doing various things (reporting subscription changes, feedback, bug reports, error alerting, CI status, etc). It's amazing to look at and functions immaculately, but occasionally does have the grim reminder of just how alone it is being on your own.

Especially when you think "this all works great, but would still work equally great with another human or two here."

Post reply on HN