HNHacker News
TopNewBestAskShowJobs

Ethan_Mick

745 karma · joined February 20, 2013

~~Software engineer turned entrepreneur building an internet business of diversified revenue.~~

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.

submissionscomments
Ethan_Mick··on Advertise in ChatGPT
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?

Ethan_Mick··on Track your workout from the iPhone Lock Screen
Yes, using it now.
Ethan_Mick··on Ask HN: What are you working on (August 2024)?
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.

Ethan_Mick··on Ask HN: Could you share your personal blog here?
https://ethanmick.com/

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.

Ethan_Mick··on Migrating from Supabase
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.

[0]: https://github.com/prisma/prisma/issues/12735

[1]: https://github.com/prisma/prisma-client-extensions/blob/main...

[2]: https://www.prisma.io/docs/concepts/components/prisma-client...

Ethan_Mick··on The Leverage of LLMs for Individuals
Yep! I answered on another comment: https://news.ycombinator.com/item?id=35891575

I might expand on this in a blog post.

Ethan_Mick··on The Leverage of LLMs for Individuals
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.

Ethan_Mick··on A Codebase That Makes Codebases
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.

Probably a good lesson in there for everyone.

Ethan_Mick··on The Leverage of LLMs for Individuals
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.

Ethan_Mick··on A Codebase That Makes Codebases
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?

Ethan_Mick··on The Leverage of LLMs for Individuals
> 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.

Ethan_Mick··on Bing Image Creator
So, currently OpenAI's Dalle-2 gives me:

"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.

Ethan_Mick··on Working for a Dating Website (2015)
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 think a lot of companies forget that.
Ethan_Mick··on U.S. moves to bar noncompete agreements in labor contracts
Good.

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.

Ethan_Mick··on Show HN: A Levels.fyi for Contracting/Freelancing
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?

1: https://jonathanstark.com/

Ethan_Mick··on BuiltWith: $14M ARR, no employees
Don't hire until you need to.

And then don't hire until you want to.

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.

Ethan_Mick··on Valve Employee Handbook (2012) [pdf]
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?

Ethan_Mick··on Ask HN: Share your personal site
https://ethanmick.com/

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!

Source code: https://github.com/ethanmick/ethanmick.com

Ethan_Mick··on Ask HN: Who is hiring? (July 2021)
Syniti | https://www.syniti.com/ | Software Engineer | Full-time | US & Canada Remote

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!

Ethan_Mick··on Ask HN: Who is hiring? (June 2021)
Syniti | https://www.syniti.com/ | Software Engineer | Full-time | US & Canada Remote

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!

Ethan_Mick··on Ask HN: Who is hiring? (April 2021)
Syniti | https://www.syniti.com/ | Software Engineer, DevOps | Full-time | US & Canada Remote

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 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.

We are building out this new platform using the best modern technologies. Go backends with modern Angular frontends 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 Java, JavaScript, or Go, but we also believe strong developers can pickup languages readily. You can view specific positions at https://www.syniti.com/company/careers/, but we are hiring for more than just those roles.

If this sounds interesting, please reach out to: nancy.vivian@syniti.com

Ethan_Mick··on Ask HN: Who is hiring? (March 2021)
Syniti | https://syniti.com/ | Software Engineer | US & Canada Remote

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 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.

We are building out this new platform using the best modern technologies. Go backends with modern Angular frontends 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 or Go, but we also believe strong developers can pickup languages readily.

If this sounds interesting, please reach out to: nancy.vivian @ <domain above>

Ethan_Mick··on Ask HN: Who is hiring? (October 2018)
Virtyx Technologies | Software Engineer | Boston, MA | ONSITE | Full-time | https://virtyx.com/

At Virtyx, we are determined to reinvent how companies monitor their infrastructure and applications, and how they resolve the problems uncovered. You will work on projects that span technologies, systems, and processes; you will design, test, and ship great code every day. You will have ownership over the features you create and will see first hand how our customers use them.

We’re looking for people with a strong background or interest in building a successful product. You are comfortable in dealing with lots of moving pieces; you love building features that directly impact customers; you have exquisite attention to detail; and you’re comfortable learning new technologies and systems.

https://virtyx.com/jobs/software-engineer/

Lastly, if you are on the fence about applying, please do. If you’re feeling daunted because you don’t think you quite check all the boxes but are excited about what we’re doing and want to come work with us, please apply anyway. We’re excited to hear from you!

Ethan_Mick··on Ask HN: Who is hiring? (August 2018)
Virtyx Technologies | Software Engineer | Boston, MA | ONSITE | Full-time | https://virtyx.com/

Virtyx is the easiest way to monitor and fix servers, desktops, and laptops. We built monitoring as powerful as Datadog, integrated it with osquery, and have automated scripts and an integrated shell to allow our customers to fix their problems right in the product. The integration allows us to automatically tag fixes and present solutions across our entire user base.

Our customers love our product, and we're excited to keep pushing what it can do. We're looking for positive people who want to be challenged and grow with the company. We empthasize with our customers and really try to understand how we can help, and ensure our product does it in the best way possible.

https://virtyx.com/jobs/software-engineer/

Also: if you are on the fence about applying or talking to us, please do. If you’re feeling daunted because you don’t think you quite check all the boxes but are excited about what we’re doing and want to come work with us, please apply anyway. We're all human, and we’re excited to hear from you!

Ethan_Mick··on Generals.io – Capture enemy generals to defeat them
Very fun! The tutorial could be a little more verbose; I played through it and still only had a vague idea as to how the mechanics work.

Decided to play a 1 vs 1 anyways. I started out behind as I warmed up to the mechanics, but had a lucky streak into enemy territory and found the opponent general faster than he found mine. Even though my opponent had a larger army by double, my smaller army was able to move faster, and I captured his general when his army was one tile away from mine. Intense!

I want as little downtime as possible in my movement, so being able to use the keyboard to not only move my army after I have selected it, but then keep them selected so I can command them to move again would be great. Use the mouse to jump to a new tile to select it, and then use the keyboard to move it.

Bonus feature! Allow me to give a number to an army (control group), so I can quickly jump between my armies and move them with the keyboard!

Keep it up!

Ethan_Mick··on Ask HN: What cloud security practices should you do, but don't?
Thanks, this is super helpful! I'm curious what other startups go through and how they juggle the business pressure with building something that is secure... or don't.
Ethan_Mick··on Ask HN: Who is hiring? (November 2016)
Virtyx Technologies | Frontend Engineer, Backend Engineer | Boston, MA | ONSITE | Full-time | https://www.virtyx.com/

Virtyx is focused on building a new approach to devops and cloud management. We're using AI to setup monitoring automatically and have it change and adapt as your product grows and evolves. We're iterating over the AI and making it smarter and smarter. Every customer we add teaches it about additional infrastructures and setups.

We're looking for driven engineers who want to focus on building an incredible product. You agonize over details and love shipping code.

Our Stack:

  * Angular.js 1.5, moving to 2.x  
  * ES6 (Migrating from CoffeeScript)  
  * Spring && Java  
  * Postgres
Please email your resume to jim [at] virtyx.com if you're interested!
Ethan_Mick··on Amazon's New $50 Fire Tablet
What does this mean for Amazon's Fire HD 6" Tablet[0]? Looking it now, the new Fire tablet is about the same in every way (screen resolution lacking), but at $50 more, I'm not sure the better screen resolution will win many people over.

The new Fire Tablet even has features the 6" one is missing! Mayday and an SD card slot.

[0] - http://www.amazon.com/gp/product/B00KC6I06S/

Ethan_Mick··on GitHub hit by DDoS attack
What we really need is a free and open source distributed version control system.
Ethan_Mick··on Academics Isn't Setup for Open Source
Yeah, I agree with that. I changed it to College, since that's more what I was talking about. Thanks!
Page 1 of 3Next →