I think this is a good moment to bring up a question I was thinking on earlier today.
In a world where agents are searching, building, and signing up for services, how do you advertise your product?
And not just advertise in traditional sense (ads in ChatGPT), but general marketing and awareness of what you're offering. Google search ads? Agents aren't using Google. Launch on Reddit for humans and hope your post gets scraped? Write up a bunch of marketing blog posts and wait for LLMs to ingest your content and have it feed into the next generation of models?
I honestly didn't quite know. If I were to launch a product today, I'd want it to be agent focused. But then how do you tell them about your product? Do these ChatGPT ads get returned if Codex does a web search? Is that good? Bad?
I've been working on Lorcast (https://lorcast.com/) a Scryfall like search for Lorcana. Scryfall offers a powerful search engine and query language to search for Magic: The Gathering cards. Lorcana is a new card game by Disney that also has a competitive scene. As the number of cards grows it will become more important to have good search _and_ good APIs for the community to build with.
It's been a breath of fresh air to work on something that I have no plans to monetize. I just want to build something useful for the community to use and that has allowed me to be relaxed with building it.
Anyways, if you play Lorcana I encourage you to check it out! The game is lots of fun.
I write about building cloud multi-tenant SaaS products and run a niche newsletter that goes further into detail about building these. My goal is to help every software engineer (if they want to do this) turn their side project into a product they can monetize and live off of.
How do people on HN like Row Level Security? Is it a better way to handle multi-tenant in a cloud SaaS app vs `WHERE` clauses in SQL? Worse? Nicer in theory but less maintainable in practice?
fwiw, Prisma has a guide on how to do RLS with it's client. While the original issue[0] remains open they have example code[1] with the client using client extensions[2]. I was going to try it out and see how it felt.
I think this is a good question. Screenshots are hard on HN, but I could write up a blog post about it all once I have a demo of the game.
I've been using ChatGPT and GPT-4 since they came out, so I'm pretty aware of their limitations. You can't build an entire project in a single project. GPT loses the context at one point.
With that in mind, break down the project into chunks and make each one a conversation. For me, that was:
1. Initial Setup
2. Add a randomly generated tilemap
3. Character Creation and Placement
4. Movement
5. Turn-based execution
6. Fog of War
7. Enemy Monsters
Each one of these is a separate thread. They start with:
> You are an expert game developer using Phaser 3 and TypeScript. You are going to help me create a game similar to Pixel Dungeon using those technologies.
I then copy in relevant code and design decisions we already made so it has the context. If it gets the answer totally wrong, I'll stop the generation and rephrase the question to keep things clean.
Lastly, I'll frequently ask it to talk about design first saying something like:
> We are going to start with the world map and dungeon generation to start. We'll add a character sprite and movement next. What's the best way to do tilemap generation and store the data? Don't write any code, just give me high level suggestions and your recommendation.
This lets me explore the problem space first, decide on an approach, and then execute it. I'll also ask for library suggestions to help with approaches, and I'm generally surprised by the suggestions. Like all software, once you know the design, the pattern, the goal, and have good tools to help you achieve it... the coding isn't all that hard.
Thanks for the response! It sounds like (in a good way) there's no shortcut. You build something, make it better, make it great, and talk about it for a long time to establish credibility.
TypeScript happens to be my current strongest language. I picked Phaser since I wanted to learn the ins and outs of building the game and not need to worry about the language I was writing in. This was also helpful because GPT-4 would still get small things wrong with the TypeScript, but I was able to easily fix those without needing to ask it.
If I had tried this in Unity and C# (which I don't know at all), I'd still be figuring out the standard library.
I generally recommend learning one new thing at a time when building something new.
I was thinking of building this for Next.js in a very similar way. I love the fact that this exists for a different stack! I think your implementation of the project template is definitely the way to go. As a customer, when I buy something to jump-start me, I want it to be as clean and simple as possible. Generating the project from a configuration handles that nicely.
Outside of the generator itself, what have you found most beneficial for converting customers and convincing people to buy? Documentation? Videos? The community access?
> More importantly, it gives me the courage to dream and attempt things beyond my current abilities.
This is one of the small things that GPT has pushed me to do. I'm an experienced programmer and grew up playing video games, but I am not a game developer. I've dabbled over the years but can't build anything outside of a tutorial.
The other day, using GPT I went through and made a Pixel Dungeon clone using Phaser (JavaScript game engine). It was such a delight. Together we got the game to a working state before I started to change some of the fundamental design, and then GPT started hallucinating pretty badly. When that happened, I stopped for the night, and then just started new focused conversations to add or change a feature, putting in the relevant code. It's turn-based, with simple AI, enemy monsters, fog of war, line of sight, and a victory/losing condition.
Being able to build this in a couple of days is an absolute game-changer, pun intended. I can only imagine the riches of experiences we will have as people are unblocked on skills and can pursue an idea.
"The server is overloaded right now, please try again later."
I guess all their compute power is going to power this. And even now the Bing generation is taking a long time. Definitely seems like their having scaling issues at the moment.
This is very similar to an except in Derek Sivers book on cdbaby.com. (CD Baby let independent artists sell their music CDs on the site long before iTunes). In it, he writes:
At a conference in Los Angeles, someone in the audience asked me, "What if
every musician just set up their own store on their own website? Since that'd
be the death of CD Baby, how do you plan to stop that?"
I said, "Honestly, I don't care about CD Baby. I only care about the musicians.
If some day, musicians don't need CD Baby anymore, that's great! I'll just shut
it down and get back to making music."
He was shocked. He had never heard a business owner say he didn't care about
the survival of his company.
To me, it was just common sense. Of course you should care about your customers
more than you care about yourself! Isn't that rule #1 of providing a good
service? *It's all about them, not you.*
I've seen over and over this harm friends in frustrating ways. Tech aside, non-competes in other industries are completely insane. My wife is an optometrist and all local shops have draconic noncompetes you are forced to sign. If you leave the shop you can't work within 30 miles (or more!) of that location.
I've had friends move entire cities just so they can get out of a terrible work situation. Worse, I've had friends stay in bad situations because their noncomplete would force them to move or drive way too far for work.
And since everyone does it, they're resigned to "it's just the way it is" and nobody wants to risk being sued.
I want to like this a lot, but it's not quite there for me.
A datum says it is "Project Billing" and has a rate of $300. Is that $300 per hour? Is that $300 total? What does that mean?
I need to be able to filter by location. For me, comparable large US cities. My cost of living is vastly different than someone living in India.
For this to be most useful, I need to be able to put in my rough skillset and then find how much similar people charge. Just browsing rates around the world isn't that useful.
And that brings me to the last issue. Hourly billing is stupid [1]. As much as possible, you should avoid charging hourly. It incentives you to work slower, more poorly, and have a worse experience with the client. But it's too hard to say, "I charged USD 100k for my project," because you need to have a complete and intimate understanding of the project.
For example, my latest consulting gig was fixing some Google Analytics and Facebook conversions for a small business. They were broken, and I fixed them. It took me ~15 minutes, and they paid me $1000. They got incredible value (their ads started working properly again), and I got paid for minimal effort. What do I put down on a site like this, $4000/hr?
I'm doubtful every business can make it to $14M ARR, but I bet many companies could generate $1M ARR without needing employees. And that amount of money would be life-changing for many people (with, of course, the potential to sell what you've created to exit).
I've spent much of my life chasing the "make it big" startup dream. I'll be pretty content if I can generate meaningful recurring revenue by building things I love. Still trying to decouple hours worked from the paycheck.
Does anyone know if this has been updated since then? Do they still hand something like this out to new employees?
I remember reading this years ago and thinking it was just so cool (the contents and structure). But I’m not sure how well it really works in practice. Is it better, or just different?
I've been starting to write more about React and TypeScript. I've been slowly creating a guide to walk coworkers through the technologies.
It's generally a terrible idea to write your own website to do this instead of just using a blogging platform. It's been fun to deeply customize some things (iFrames for mini browsers showing React code), but writing the code to send out half decent emails has been a nightmare (https://github.com/ethanmick/ethanmick.com/blob/main/pages/e...). Anyways, any feedback is appreciated!
Syniti is one of the foremost data migration companies assisting thousands of customers in managing and migrating their data. In the process we've learned that there is a fantastic opportunity to build out a governance and data quality platform to manage the data we just migrated and continuously evaluate it over time for quality. It is important, critical, and customers pay a lot of money to ensure their companies run smoothly.
Our team has been given the opportunity to build this new cloud platform using the best modern technologies. Go backends with modern UI frontends (React/Angular) all running on our Kubernetes cluster. We strive for engineering simplicity and powerful API's to deliver features quickly to our customers.
We want to chat if you:
* Have experience designing, developing and shipping cloud software
* Write well-crafted, readable, and maintainable code
* Are a team player and participate actively in code reviews to ensure quality and distribute knowledge
* Contribute in debugging and troubleshooting complete stack of services
* Are empathetic, collaborative and communicative
We prefer experience in JavaScript, TypeScript and Go, but we also believe strong developers can pickup languages readily. If this sounds interesting, please reach out directly to me, the Director of Application Engineering: ethan.mick [at] syniti.com. I'd love to chat!
Syniti is one of the foremost data migration companies assisting thousands of customers in managing and migrating their data. In the process we've learned that there is a fantastic opportunity to build out a governance and data quality platform to manage the data we just migrated and continuously evaluate it over time for quality. It is important, critical, and customers pay a lot of money to ensure their companies run smoothly.
Our team has been given the opportunity to build this new cloud platform using the best modern technologies. Go backends with modern UI frontends (React/Angular) all running on our Kubernetes cluster. We strive for engineering simplicity and powerful API's to deliver features quickly to our customers.
We want to chat if you:
* Have experience designing, developing and shipping cloud software
* Write well-crafted, readable, and maintainable code
* Are a team player and participate actively in code reviews to ensure quality and distribute knowledge
* Contribute in debugging and troubleshooting complete stack of services
* Are empathetic, collaborative and communicative
We prefer experience in JavaScript, TypeScript and Go, but we also believe strong developers can pickup languages readily. If this sounds interesting, please reach out directly to me, the Director of Application Engineering: ethan.mick [at] syniti.com. I'd love to chat!
Now I work at a big tech company.
Blog: https://ethanmick.com YouTube: https://youtube.com/@ethan_mick Twitter: https://twitter.com/@ethan_mick
You can email me at [ethan] at the domain above. I'm always interested in chatting to new people and answering any questions.