449 karma · joined January 2, 2018
Also the idea that a dev who could making a game in 24 hour would create something professional and polished in 3 days is a joke. The answer to “where are all the games” is simple: LLMs don’t actually make a huge impact on making a real game.
I’m not saying running a company is easy and I know that many gray areas exist in the decision making. I do think companies can exist, profit, and be a net good for the world. However, we need to remove the notion that the duty to shareholder profits is a moral duty. It’s a cowards way out of having to make actual difficult choices. It’s one of those things that sounds great exactly because it allows you do horrible things with no responsibility. It creates a system where you offload the effort and weight of your decisions. As long as you’re are acting in the interest of shareholders, you are in the clear. That’s a dangerous concept and the opposite of morality.
Can’t say the same for whenever the new abstraction of the day comes along. In my experience what the OP is saying is exactly my experience. The abstractions get picked not because they are best but because they reduce liability.
This also doesn't mean to not be forward thinking. You want the architecture to support growth that will more than likely happen, just keep the expectations in check.
Organization and tools like that can be helpful for communicating and coordinating across a company, but at the individual level it's usually a waste of time. You don't need them. Remember, the whole point is to get work done. If organizing isn't moving you closer to your goal, it's not doing it's job.
My suggestion is to do what I do now.
One list: TODO.txt.
I put tasks in priority order and just work through them. Sometimes I write a note or an idea at the bottom, but that's it. No over complication. It only has what I need to get the next thing done and keep moving through my tasks.
Realistically you should engineer for the problem you have or can reasonably expect you are going to have pretty soon. You can solve future problems in the future. I'm also not saying to write horrible unmaintainable code, but don't try to abstract away complexity you don't actually have yet. Abstractions and where to separate things should become apparent as you build the system, but it's really hard to know them until you are actually using it and see it come together.
If what you are trying to do is capital intensive, has tons of competition and generally will need the scale in order to compete/turn a profit, you should probably take VC funding.
If you want full control over your product or are operating in a niche and think the explosive growth necessary will hinder you, you have different priorities. You might not be trying to make the next "big thing" and in this case probably don't take funding. In fact, you probably don't want VC funding because your goals don't align with theirs.
Like most difficult questions, the answer is: it depends.
Look at HN, I know, run by a VC and it's not without some issues, but it is still better than most forums and social media to me specifically because of what it doesn't try to do. It has a specific goal and doesn't feel the need to try and extend beyond it.
My ideal is that in the future we will more communities like this, where it's built to address a group of users needs and not try and expand beyond it. Where the content and information is shaped in a form to meet the specific needs of the group using it and not generalized into the lowest common denominator so ad sales can go up. It feels unlikely at this point, but I still have hope.
The internet' scale allows great products to grow exponentially. A bunch of great software, sites, and tools took off and grew at a rapid rate. But we took the wrong lesson from this and thought "rapid growth=great product". So VCs have put growth above everything else, and are hoping they can figure out a product after, like a 2 year-old thinking that putting on his shoes will mean he gets to go outside.
Things can just be what they are, grow naturally and then die naturally. I suspect that injecting cash and attempting to achieve an unnatural growth is probably not good for both the quality of the product and the long term stability of it.
I would love to see more niche things grow organically and fill a role for some people, at some time and not try to be everything for everyone. Because when that's the case, does anyone really enjoy it?
Well first I would say that a team of quality people wouldn't all run in their own direction. They would know they need to coordinate to achieve a goal. Quality doesn't just mean being good at programming, it means the whole process of delivering software.
The sports metaphor is starting to break down, but just to have a one more go. Sports is different because the top teams all have top 1000 players in the world. This won't really happen in software. So with software it's more about putting together the right team. One where people enhance the whole, and that's what I think the biggest role of management is about. It's helping coordinate quality people.
The thing I was speaking out against was that you could have a good manager with a good process and not great people. The idea that the process can hide the problems of the team is something I don't believe. It doesn't matter how you organize if thats the case, nothing of real value will get made.
I do like the idea that the total result is a multiplayer of the two values. I just think the team quality is a little more of a multiplier than the other :)