HNHacker News
TopNewBestAskShowJobs

PaulMest

552 karma · joined December 5, 2011

I help startups with product, engineering, and strategy. Currently building an AI Assistant with a small team in Los Angeles.

Email: paul+hn [at] CleverPoint.co

Interests: ML, React, React Native, NodeJs, Python/Flask/Pandas, Data analytics, product management, startups, mobile

Formerly...

Started first business when I was 15 building software for fortune 500 companies. Acquired by largest customer. I worked for them through high school and college.

Cofounder/CTO: Circadian Risk

Head of Product: Early stage startup in SF (Close.co)

Founder: Mythly Studios

Microsoft life: System Center Advisor

Part-time Video Blogger: channel9.msdn.com/shows/PingShow/

submissionscomments
PaulMest··on Show HN: InStock – like Waze, but for grocery availability
One thing that would be helpful to me is to get a list of the re-stocking times for my local stores. I know that my local City Target gets restocked at 11am every day. And that a Walgreens down the street gets restocked on Tue and Fri nights so Wed/Sat mornings are when to get in line early to get some of the tough-to-find goods. This could be crowd-sourced like the rest of the app or an appointed business owner could be verified or introduce a superuser/moderator role for people to get karma based off of verified submissions.
PaulMest··on Ask HN: Who is hiring? (April 2020)
Circadian Risk | REMOTE (USA)

---

Positions:

1) Senior Software Engineer (Full-stack) | Full-Time

* 75% product/engineering

* 25% Cloud/data management (e.g. Terraform) site reliability

2) DevOps Engineer | Part-Time/Full-Time

---

Package (for all positions):

* Competitive salary + equity incentive plan

* Platinum PPO + vision + dental (including spouses/dependents)

* Paid time off

---

Mission: Circadian Risk aims to improve enterprise security and physical risk mitigation.

---

Team: We are a hard-working team who loves building great products that improve people’s lives. We have an HQ in Ann Arbor, MI, USA but we try to keep our processes sensible, lightweight, and asynchronous to enable a remote-friendly work environment. Every new hire is asked to read Maker’s Schedule, Manager’s Schedule so that we collectively internalize the importance of getting engineers into a flow state as much as possible. When we do have meetings, we strive to make them impactful and often lighthearted. We celebrate execution and personal growth. We enjoy rapid prototyping and sharing what we’ve learned across the team in weekly Dev Dives. We would love to find more self-motivated, strong communicators who can help modernize the physical security industry.

---

Tech stack (searchable buzzwords) for our next generation product: TypeScript, NestJS, TypeORM, Swagger, Postgres, AWS, Terraform, GitHub Actions, Docker, Redis, React, React Native, Redux, Material UI

---

More information available here: https://docs.google.com/document/d/1e1SXIs8xbghKBM1oIDlwQsaW...

If you’d like to apply, please send something representative of your capabilities and work experience (resume, GitHub, LinkedIn, portfolio, et al) to pmestemaker + hn (at) circadian risk dot com.

PaulMest··on Prisma 2.0 Beta: Type-safe Database Access
Could be off-topic for this thread... but what shade would you like to throw NestJS's way? Or do you have a write-up somewhere else, by chance?
PaulMest··on Ask HN: Who is hiring right now?
Formatting error on my part... there are two separate positions:

1) Senior Software Engineer (Backend) | Full-Time

2) DevOps Engineer | Part-Time/Full-Time

... thanks to all who have already reached out. I will make sure to clarify this with you, too.

PaulMest··on Ask HN: Who is hiring right now?
Circadian Risk | REMOTE (USA) Senior Software Engineer (Backend) | Full-Time DevOps Engineer | Part-Time/Full-Time

Circadian Risk aims to improve enterprise security and physical risk mitigation.

Package:

* Competitive salary + equity incentive plan

* Platinum PPO + vision + dental (including spouses/dependents)

* Paid time off

Team:

We are a hard-working team who loves building great products that improve people’s lives. We have an HQ in Ann Arbor, MI, but we try to keep our processes sensible, lightweight, and asynchronous to enable a remote-friendly work environment. Every new hire is asked to read Maker’s Schedule, Manager’s Schedule so that we collectively internalize the importance of getting engineers into a flow state as much as possible. When we do have meetings, we strive to make them impactful and often lighthearted. We celebrate execution and personal growth. We enjoy rapid prototyping and sharing what we’ve learned across the team in weekly Dev Dives. We would love to find more self-motivated, strong communicators who can help modernize the physical security industry.

Tech stack (searchable buzzwords) for our next generation product:

TypeScript, NestJS, TypeORM, Swagger, Postgres, AWS, Terraform, GitHub Actions, Docker, Redis, React, React Native, Redux, Material UI

More information available here:

https://docs.google.com/document/d/1e1SXIs8xbghKBM1oIDlwQsaW...

If you’d like to apply, please send something representative of your capabilities and work experience (resume, GitHub, LinkedIn, portfolio, et al) to pmestemaker + hn (at) circadian risk dot com.

PaulMest··on Recursive SQL Queries with PostgreSQL
My team just started working on a project that will work with hierarchical data. Have you looked into ltree[0] at all? Any thoughts on when that would or would not be beneficial?

[0] https://www.postgresql.org/docs/current/ltree.html

PaulMest··on Ask HN: First hire offered to work part-time – what should I do?
I think it depends on the management team and on the hire. Just like some people can work remotely effectively and others cannot... some people can work part-time effectively and others cannot.

I've had this be very successful one time with a senior developer who was working in roughly the same stack across side projects as well as what I had hired him for. He was able to time-slice very well. He could come in and in a fraction of the time of the rest of the team make a meaningful impact in both pushing his own features as well as reviewing others' code/architecture.

I've found in running a consulting practice that if people need to split their time across projects that they generally do their best work when they can devote a consistent set of days to specifics projects/team (Project A on Mon-Wed, Project B on Thu, Project C on Fri). Trying to time-slice throughout the day of 4hr with Project A and 2hr with Project B and 2hr with Project C becomes too much context switching for most people.

One other thing to keep in mind: if people do not work enough on a single project, they will not achieve enough momentum to do great things. Or if the rest of the team is working full-time, it may be too much effort to keep them in the loop of everything that has changed since it is moving at a faster pace than what their time allows. You can try to overcome this by not working on critical parts of the product or having their features not be depended upon by others.

PaulMest··on Music Theory for Musicians and Normal People
I have no affiliation with the author and this is the first I'm seeing the content, but I'd guess its's because PDFs can be vector-scalable and never lose their quality as you scale up/down and PNGs cannot.
PaulMest··on Music Theory for Musicians and Normal People
This site is pretty great. I would love to re-learn some of the basics in this format.

Here are some previous discussions since this content has hit the front page a couple of times:

* 5 years ago - https://news.ycombinator.com/item?id=8472157

* 7 years ago - https://news.ycombinator.com/item?id=4807091

PaulMest··on Python Is Eating the World
I'm pretty sure this is what they meant...

  def my_func():
      group_keys = 'My thing'
      while group_keys == 'My Thing':
          if some_logic() == 42:
              groups_key = 'My other thing'  # typo here
PaulMest··on What an attacker gets from Apple devices if they sniff Bluetooth traffic
Any idea why this is flagged? I found the demos and the GitHub repo pretty interesting.
PaulMest··on Ask HN: How does your development team handle database migrations?
* I see your point on not standardizing on one framework. Generally when that has happened for me, it turns into a new service and it has its own database/tables/migration management. It does get quite annoying, for sure.

* I've seen enough things go wrong that on my teams I do not allow DDL to be executed outside of a controlled process that comes from code. But yeah, if that were to happen, it would annoying to figure out what was done and then try to re-model.

* With Django you can specify exact SQL to run. So you can break up operations into multiple smaller steps... canonical example is building a new column based on an old column. You first add the column with NULL. Then you populate in batches of ~10k records. Then you add on the constraints/indexes.

* I haven't used Django with sharding. It appears there are some posts about it, but it all appears to be community generated content and not part of the official docs.

All-in-all, I could see that at a large scale with very mature engineering organizations with lots of activity and complex operations that something like Django could fall short and a home-grown system like this may be beneficial, assuming it were reliable enough.

PaulMest··on Ask HN: How does your development team handle database migrations?
This was helpful to think about, thanks.

I've rarely encountered logical merge conflicts with migrations, but I could see it happening.

I used to be on the SQL Server team at Microsoft and had some exposure to the customer support teams. So data integrity and eliminating any potential for errors was huge.

So while I love the idea of migrations being generated on the fly from actual state in Production-System-5 to desired state of commit 27a73e, I'm skeptical of it working that well in practice. Certain cases come to mind where there might be intermediate migrations from [full name] -> ([first name] [last name]) -> ([first initial] [last name]). The system would have to be smart enough to know A -> C may require A -> B -> C or prompt the engineering team for a better DML migration script.

Also, you will want there to be documentation about what was performed whether that is a migrations table that points to a .py file... or a .json output... or a log file.

PaulMest··on Ask HN: How does your development team handle database migrations?
I am guessing that you are probably not using Python/Django... but is this any different than what Django offers?

Django allows you to define your models (schema) and then run a command that will generate the migrations. If you don't like the migration that was generated, you can modify it. You can customize up and down operations.

There are also tools that will take an existing database and generate the Django models for you.

All of these operations can also export the exact SQL that will run on each supported RDBMS platform in case you want to be extra sure on what exactly will be executed.

PaulMest··on Ask HN: Which abandoned proprietary software would you resurrect?
My favorite feature of Picasa was duplicate image detection. IIRC, it would actually find duplicate images by the visual of the image and not just the bits. So it could match smaller versions of the same image. This helped me clean up countless duplicate copies of photos all over my different disk stores.
PaulMest··on Snapchat CEO’s leaked memo on survival
You can export to another platform in circle, square, or widescreen format.

  Field of View: 105°
  F-stop: f 2.2
  Photos: 1642 x 1642 px
  Videos: 1216 x 1216 px at 60 fps
source: https://www.spectacles.com/shop/nico
PaulMest··on Twitter’s deletion of its FB app caused old cross-posts to temporarily disappear
Facebook did not purposely remove the cross-posted tweets. Twitter removed their app from the Facebook platform which had this as an unfortunate result.

Source: https://www.axios.com/how-cross-posted-tweets-disappeared-fr...

PaulMest··on Ask HN: Who is hiring? (July 2018)
Just out of curiosity, why did your team IPO so early?

Yahoo! Finance shows your market cap is $51M which is incredibly small for a public company: https://finance.yahoo.com/quote/HYRE

PaulMest··on Giraffes Added to the Endangered Species List (2016)
What do you think the benefits of mandatory population control are?

Have you seen any of Hans Rosling's [1] talks on the topic of population growth? After watching, would you still think there is need for mandatory population control?

[1] https://www.youtube.com/watch?v=2LyzBoHo5EI

PaulMest··on Ask HN: Recommended Products for Home Office? – Dec 2017
Currently these are my choices...

1) Fully Jarvis sit-to-stand desk with rolling casters

2) LG 27UD88-W - 27" 4k Monitor https://www.amazon.com/LG-Electronics-27UD88-W-LED-Lit-Monit...

I was thinking about getting the LG UltraFine 5k, but it seems like there are mixed reviews on it. Hopefully Apple will come out with a better monitor in 2018 that will also charge my 15" MacBook Pro.

3) Synology 1517+ with 8GB of RAM https://www.amazon.com/Synology-DS1517-8GB-Disk-Station/dp/B... Haven't determined which hard disks yet. Will check the latest Backblaze report. https://www.backblaze.com/blog/hard-drive-failure-rates-q3-2...

4) Haven't looked into a TV yet

5) Already upgraded my router and modem...

Wireless router: https://www.amazon.com/NETGEAR-Nighthawk-X4S-R7800-100NAS-Co...

Cable modem: https://www.amazon.com/Next-Generation-ARRIS-SURFboard-SB820...

Blue Yeti microphone: https://www.amazon.com/Blue-Yeti-USB-Microphone-Blackout/dp/...

Considering getting a drone, too... but haven't researched that yet.

PaulMest··on Ask HN: What non-work task have you automated?
Not yet, but I am happy to share it. Shoot me an email and I'll dust off the code and send it your way.
PaulMest··on Ask HN: What non-work task have you automated?
Here are a few that have been pretty useful to me and my friends:

1) Local events finder. A few friends of mine and I moved from San Francisco to Los Angeles last year and didn't know many people. Even though there is a vibrant event scene down here with hundreds of events every day, we always seemed to find out about the cool ones after they had passed. I wrote a Facebook scraper that would find all of the local businesses and events for each of the businesses. It puts it in a Postgres database and then does some simple sorting based on different signals (e.g. how many likes for the page, how many people RSVPing yes, maybe, no for the event) and spits out a spreadsheet. This has been great to discover events and a huge time saver for planning dates.

2) Photo organizer. I use Dropbox's iOS app to backup photos from my phone to Dropbox. However, it just puts them into one big folder. I wrote a simple Python script to parse the filenames of the photos/videos and put them into a nested folder structure by year/month.

3) Long flight movie digest. I had a few long flights that weren't going to have wifi, so I built a web scraper to pull the movie list from the flight ahead of time and then cross reference it with Rotten Tomatoes so I could get a stack ranking of the movies by Tomatometer rating.

PaulMest··on China's Central Bank Bans ICOs
I hold many assets in this space including ETH and NEO. There are tons of scams and money grabs with ICOs. While this announcement has been pretty brutal for me, I think it is ultimately a good thing for the industry as a whole.

I think ICOs can be extremely beneficial for teams to raise money. But a lot of people buying these tokens do not understand what they're getting in return. I'd like to see it become easier to actually own equity or a % of a company's revenue by holding tokens. Hopefully these future regulations will build trust in the ecosystem by minimizing scams and providing clarity. More trust yields more people converting fiat -> crypto... which should yield a healthier less volatile ecosystem.

PaulMest··on Tiny satellites ushering in a new space revolution
I took a tour of their SF office last year. It's a pretty impressive operation. The satellites are indeed quite small; I always compare them to a loaf of bread with some wings. The people that work there are pretty sharp and seem to be very excited about what they do.

I was one of the first people to consume their v0 and v1 APIs to get their analytic imagery dataset. It was more challenging than it should have been to transfer ~100TB into our compute cluster. I haven't touched their API in about 7 or 8 months, but from my last meeting with them they said they have eliminated my top pain point. Looking forward to seeing more great things from them.

PaulMest··on Standard Notes – A notes app with a focus on longevity, portability, and privacy
I've had serious difficulty[1][2][3] with Apple's Notes.app over the past 18 months. So much so that I've written some JXA (Javascript for Automation) code to extract all of my notes to self-contained HTML files.

Now that I have 923 notes in HTML files on my hard drive, I can do whatever I want with them. My current plan is to import them into OneNote because they have good app coverage across platforms and they just released what looks like a pretty solid API that lets you import and export notes.

Maybe I (or somebody else) can write an importer for Standard Notes to make it easy to switch from Apple Notes?

[1] Notes not syncing across devices

[2] Search not working at all on Mac

[3] Moving subfolders of notes in the app makes the notes completely disappear

PaulMest··on PouchDB, the JavaScript Database That Syncs
Couchbase Lite was not something that we considered. Once we got PouchDB up and running it seemed to fit our needs well enough that we stopped considering alternatives.

I've upvoted davidbanham's comment because that seems like a more insightful answer to your question.

PaulMest··on PouchDB, the JavaScript Database That Syncs
Realm looks pretty cool. I'll consider using it in future projects. At the time of starting the project (April 2016), here are some thoughts:

1) Realm works only in React Native and not in React web. There is a regular web component to my project as well and the thought was we could reuse our knowledge of PouchDB across mobile and web. This has paid off in the prototype mode because it allowed us to build some simple reports in our web product. However, this is probably not the right architecture for reporting and we will likely change it soon.

2) Realm was very new and I felt we were already using too many new frameworks. So it was added risk on a tight timeline to get a prototype out the door.

3) On the server side, CouchDB has Futon to simplify our learning curve and give us a basic GUI to have a sanity check when our code wasn't functioning as expected. Not sure what Realm's server side looks like.

I'm sure I can come up with other reasons. But definitely want to check out Realm sometime. Looks like it is shaping up quite nicely.

PaulMest··on PouchDB, the JavaScript Database That Syncs
I've been using PouchDB in a React Native app for about 6 months with SQLite as its backing store so that we can use more than 50MB of storage on the device. It has been working pretty well to persist data into an offline cache and then sync to a CouchDB 2.0 database in Digital Ocean.

Getting it to work inside React Native was initially very challenging. Keeping our shim up to date with the recent changes to PouchDB has also been challenging. We are currently using PouchDB 5.4.5 because there was a breaking change in 6.x and I haven't had a chance to dive into it to figure out what is going wrong.

The PouchDB community (especially Nolan Lawson) does a great job of showing examples, answering questions, and responding to feedback.

PaulMest··on How Tinder's “feedback loop” forces men and women into extreme strategies
I'll probably write a blog post about this in the near future. What do you think the results were?

Feel free to reach out to me privately (contact info in profile) and I'll share with you a quick digest of the results before the blog post gets published.

PaulMest··on How Tinder's “feedback loop” forces men and women into extreme strategies
I was a fairly active real user of Tinder for a while. Though, I noticed that a lot of my matches were from Spam bots who were trying to get me to go to malicious links or promote businesses. I wasn't overly annoyed by them and would report those bots to Tinder as "feels like spam". I felt like this was a known part of the ecosystem and my bots didn't feel too burdensome or evil.

The line that I drew at the time was that, aside from the initial match, the bots were never going to engage in any on-going way with the matches. So the bots could receive messages from matches, but would never send messages or post Moments (which was a feature at the time to effectively message all of your matches with a photo).

← PreviousPage 2 of 4Next →