Hacker News new | past | comments | ask | show | jobs | submit | drx's comments login

I thought it was a pretty interesting choice to post the funding announcement as the team and not as the CEO, more companies should probably do that.

Rails has ActiveRecord, which has an extremely elegant REPL. It's a delight to use.


ActiveRecord may be both the best and worst part of Rails. Currently the largest scaling problem that I'm facing is with all the before_* and after_* callbacks which run per model record rather than a batch of changed records. This is an N+1 query landmine field for which ActiveRecord offers no solutions.


I agree that ActiveRecord isn't particularly opinionated about how to deal with updates to batches of records, but there are multiple ways of approaching this and AR won't get in your way.

upsert_all[1] is available to update a batch of records in a single write that does not invoke model callbacks.

activerecord-import[2] is also very nice gem that provides a great api for working with batches of records.

It can be as simple as extracting your callback logic and a method (def self.batch_update) and running your callback logic after the upsert.

[1] https://api.rubyonrails.org/classes/ActiveRecord/Relation.ht... [2] https://github.com/zdennis/activerecord-import


By upsert_all not invoking model callbacks, it's admitting that the ActiveRecord approach doesn't scale.

"It can be as simple as extracting your callback..." Isn't this the kind of repetitive thing a framework should be doing on your behalf?

To be fair, ActiveRecord isn't a fault Rails invented. Apparently it's from one of Martin Fowler's many writings where each model instance manages its own storage. Even Fowler seems to say that the DataMapper approach is better to separate concerns in complex scenarios.


TBF no framework will do everything perfectly, and having clean escape hatches is pretty good in itself.

Even outside of batch processing, there will usually be a few queries that absolutely benefit from being rewritten in a lower layer of the ORM or even plain SQL. It's just a fact of life.


AR is the worst thing about Rails - it's anti-pattern central. The Ruby REPL is amazing, however.


ActiveRecord or how to badly couple your storage with your objetcs.


Congrats on launching. WebGL is really hard, I built a similar engine and it's tougher than it seems.

Your budget is only 8.33ms if you target 120hz too btw :) And realistically less because you don't get all of it.


I would argue a web designer might not even need 30fps.


Whenever my frame rate drops on larger projects I can feel the difference. We probably don't need higher frames, but it feels better.


640K should be enough for anybody


Another advantage startups have over big companies.


Until they get bought up and founder is replaced with one of these generic MBA types as a CEO


The circle of life :)


I didn't want to editorialize the article title, but yeah, it's tacky.


FWIW, not to me. Variety is the spice of life. It’s their blog, they should use whatever style they feel like using.

Besides, is lowercase poetry a fuck you to the reader as well?


This is not an art exhibition. Conventions have a purpose. Capitalization is not a random spelling quirk, there’s a reason why we have it. The upvote balance on my comment confirms that it’s something to consider. The “fuck you” was in reference to the author’s comment, not just to his blog post.


This is a post in a personal blog that they wrote because they wanted to write it. Someone else came across it and pointed people outside of it's desired audience that it existed.

If I make a peanut butter and jelly sandwich and offer it to my friend next to me, and someone across the street yells "How rude of you! I'm allergic to peanuts", I will just close the window and continue sharing sandwiches with my friend, not spend time arguing with the yelling guy across the street.


Readers have different expectations for poetry than other forms of writing. We don't expect technical docs to be in the form of epic verse.


Canvas | Sales Engineer | San Francisco in-person | Full-time | $200k + 1%

Canvas [0] is building the easiest way for founders to grok their startup through analytics.

Come solve this with us and save founders from drowning in Google Sheets.

Why should you join?

- We make money from building for customers that love us

- We actually really need you. You’ll have a huge impact on our trajectory

- We love shipping and we hate bureaucracy

- We’re here to win

- We’re backed by Sequoia, SV Angel, founders of Fivetran, Segment, Datadog, Webflow, Lattice, Flexport, Instacart, Front, Okta, DoorDash, Loom, Shogun, Postmates, and more.

Also hiring killer AEs atm, ping me for a job description.

Interested? Email me at [email protected] (technical CEO)

[0] https://canvasapp.com

[1] https://canvasapp.com/careers

[2] https://canvasapp.com/blog


Canvas | Startup Engineer | San Francisco in-person | Full-time | $200k + 1%

Canvas [0] is building the easiest way for founders to grok their startup through analytics.

Come solve this with us and save founders from drowning in Google Sheets.

Why should you join?

- We make money from building for customers that love us

- We actually really need you. You’ll have a huge impact on our trajectory. This isn’t a ZIRP scale up

- We love shipping and we hate bureaucracy

- We’re here to win

- We’re backed by Sequoia, SV Angel, founders of Fivetran, Segment, Datadog, Webflow, Lattice, Flexport, Instacart, Front, Okta, DoorDash, Loom, Shogun, Postmates, and more.

Interested? Email me at [email protected] (technical CEO)

[0] https://canvasapp.com

[1] https://canvasapp.com/careers

[2] https://canvasapp.com/blog


What would be your recommendation for replacing TOTP today?


FIDO2


Excellent write-up, thank you.


Consider applying for YC's Fall 2025 batch! Applications are open till Aug 4

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: