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

> But how do you deal with refactoring?

We solved this problem by having thorough automated test coverage for all SQL queries.

Here's basic lifecycle of a test: 1) Create the test database 2) Migrate the database to the latest schema version 3) Insert test data 4) Execute the SQL query 5) Validate the results of the query


Tests are nice. But I see disadvantages with relying on them:

1) We now need 100% test coverage for queries. Forget one of them and the castle might fall on the client side. This can be mitigated with gatekeepers on CI/CD pipeline to ensure 100% coverage. But it's still quite the effort.

2) Our feedback loop for developing refactoring is now slower now since we need to run all tests to see what broke after a schema change. In contrast to an IDE giving compilation errors.

3) If we build SQL queries by composing them, which is common pattern for business rule validations, there will be many branches to be tested.

4) We won't have auto-completion of table and column names in the IDE. And if you mistype them your feedback is slower.

I say that as someone who went all in SQL query builders and composability in a project but when it grew large we were still afraid of changing schema despite having a very high test coverage.


There's a great quote from Tom Mendola in the comments section of Rick's video.

"Thanks for doing this. Chick’s mother told me that when he was a child she would strip his bed sheets to wash them. She would find music written in pencil on the bed sheet. He was supposed to be sleeping but his mind was always in music. As amazing as he was as a musician/composer he was a wonderful person, loving father and a true friend. I will miss him."


Chick's Three Quartets is absolutely brilliant. I hope that he and Brecker, who also passed too soon because of cancer, are together again making great music somewhere out there.


Here's some additional FZF Git love posted by junegunn a while back. https://junegunn.kr/2016/07/fzf-git/


Power Pro Leasing | Multiple Positions | 100% Remote (US) | Full-Time

Power Pro Leasing is a technology company focused on improving the touring experience in the apartment leasing industry. Power Pro enhances the prospect’s leasing experience while at the same time enabling the leasing professional to become more efficient in the apartment leasing and management processes. We offer a VIP guided tour experience where agents have an iPad application that integrates with their property management software, as well as self-guided and virtual tour experiences that center around a customized web app experience delivered to the prospect. Power Pro is already working with many of the largest management companies in the work and is focused on large (100+ unit buildings).

We are seeking smart, self-motivated, and well-rounded software engineers who excel at solving problems in innovative ways. The right candidate for this role values teamwork and communication as well as working closely with other engineers in our small, dynamic team. Software Engineers at Power Pro must be adept at learning new technologies and willing to work on a wide variety of problems. Our technologists are involved in the full software development lifecycle, including the design, development and maintenance of high dependability systems.

Our primary technology stack is Java/Spring/Hibernate on the backend with various frameworks for the frontend including React and Angular.

Software Engineer, Frontend: https://www.linkedin.com/jobs/view/1968006697/

Software Engineer, Backend: https://www.linkedin.com/jobs/view/1909150285/


Join us for AI Startup School this June 16-17 in San Francisco!

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

Search: