HN user

dewski

954 karma
Posts13
Comments76
View on HN

All new features are gated behind feature flags that progress from the developing team, to all GitHub employees, then to public over a multi-week span. Larger changes like this one have an internal discussion post shared with the company and a changelog entry once published.

I was responsible for this going out. The goal was to provide a more consistent user experience in that what happens when you click an issue would be the same in more places where we use the issue viewer (sub-issues on an issue, our dedicated issues dashboard (https://github.com/issues), GitHub Projects, and others). Like you mentioned, you also wouldn't lose your place when clicking an issue reference when reading a discussion. There were some performance improvements that came with the change too. It was well intentioned, but we hear you, and thanks for the feedback. We missed the mark on this one and it's been rolled back.

That totally works if it is rare for you! The last 2 months I've had a few things I've added to my personal calendar that synced with work calendar: lunch with a family member, dropping off or picking up car from service, haircuts, contractor stopping by, dentist, vet appointment, etc. It's nice to not worry about it since it marks me as Busy right when I create the event.

Don't Double Book Me isn't some crazy startup idea that needs funding, I am not shooting for the moon with this. Feature development was basically done in a few weekends and I like that it solves a single problem well. There is definitely a market for people who need a tool like this. Look at Reclaim, Calendly, Clockwise, CalendarBridge, OneCal, etc, which have successfully tapped into this market but are focused on selling to teams.

I designed it for individuals balancing personal and professional commitments. I work somewhere with a heavy meeting culture, nothing I can really do about that. I found myself double booked often with personal commitments I had. Consider a scenario where you need to attend your child’s school play, but you forgot to also block off time on your work calendar, now your colleagues think you’re free and invite you to something. You've been double booked.

Events outside your working hours aren’t synced, protecting your personal time and privacy. The default setting is to create events on a destination calendar with the summary explicitly being "Busy" without any other information, but you can change it so it mirrors the event details should you choose.

I’ve been working on Don’t Double Book Me (https://dontdoublebookme.com) the past few weeks out of frustration with keeping my personal and work Google Calendars in sync.

Previously used Reclaim but found $10 a month to keep 2 calendars in sync was excessive and the software was increasingly becoming more team oriented, no longer for individuals. Felt like I was paying for a product and also the product. I just needed to keep 2 calendars in sync, not smart meetings, analytics, integrations, etc. ideally I set it up and forget about it.

I really needed a way to sync my calendars privately, without all the extras. Now that Dropbox has purchased Reclaim, it's even more important I feel like my calendars are not spied on. I knew I could provide a similar service.

Here’s what makes me excited about it as a user:

Affordable: Just $20/year with a 7-day free trial. Cancel at any time for a pro-rated refund.

Privacy First: No need to store events on a servers enabling unlimited calendar syncs.

Working Hours: Adaptive feature that adjusts if an event falls outside your specified working hours.

Round Event Times: Opt to round event start and end times to the nearest 15 or 30 minutes for cleaner scheduling.

Invitations: Block time between calendars when you receive a meeting invitation that you haven't responded to yet. Decline it? The time block on your other calendar is removed.

My plan is to keep it small and focused, while also listening to user feedback for how you'd like to manage your personal and work calendars more efficiently.

Thanks for checking out my new project.

A few weeks ago I got the chance to check out the Google Calendar API for the first time and was very impressed how thorough it is.

- Very easy to retrieve incremental changes to events on a calendar

- Webhooks to be notified when calendars are created, updated, or removed

- Webhooks to be notified when events are added, updated, or removed on a calendar

- Bulk requests

- Select only the fields you need from the event

- Querying events in a calendar with custom properties (I use this so I don’t need to store anything on my side)

Funnily enough to build a sync between my personal calendar and work calendar, and for my wife and I to have a combined calendar for our own personal commitments. I also feed in a few calendars I subscribe to for sporting events to our shared calendar. $100 a year was a bit much for a feature that should be in Google Calendar already. I named it Don’t Double Book Me, felt appropriate.

I only started exploring the Google Calendar API recently after realizing that Reclaim’s policy allows Enterprise customers to take over other individual paying accounts associated with the Enterprise, effectively making it not really my Reclaim account anymore. Didn’t help I wasn’t notified of this either.

RoR Debugbar 2 years ago

It's a fair critique! I still keep kicking the can down the road about revisiting the project and modernizing it. The ecosystem has moved along so much since I last revisited it I'll need to take a fresh look at it, accepting the PRs that are currently open is likely out of the question.

Interest in the ecosystem is shrinking and this is one symptom.

I think the interest in the ecosystem is still very strong, there is just more publicity and marketing around the newest frameworks and capturing peoples attention. Rails is more than ever the best place to go zero to one, and still scaling past 100M at GitHub.

There are so many libraries that are largely feature complete. For example, Devise doesn't need anymore features. There is some traction of going the more lazaronixon/authentication-zero route which is a generator for owning the code rather than having everything live in a gem. This is just one specific example. Rails is moving more and more third party things in house showing it matured in the ecosystem and can move into core Rails.

I find myself reaching to a gem as a last resort if at all possible these days.

RoR Debugbar 2 years ago

Author of peek here. Honestly, I got burnt out. We stopped using this internally at GitHub for our secondary Rails applications which made it difficult to continue working on. Rails was going through its identity crisis with asset pipelines and I didn't feel like trying to support every available option for people like Sprockets, Importmaps, NPM, Bower, etc. It was nice when there was the paved path and users could generally follow the README and be up and running quickly.

https://github.com/MiniProfiler/rack-mini-profiler gets you most of the way there and comes by default in the Gemfile for new Rails applications.

Pacaso allows you to purchase more than 1/8 of a residence, you can purchase as many 1/8 shares as you like. So in theory you could easily purchase 1/4 of a residence.

Pacaso is also purchasing homes that are not yet built, for instance they’ve purchased two homes in North Lake Tahoe that are actively being developed.

I am a 1/8 shareholder of a property in North Lake Tahoe through Pacaso and I love the model. Best of luck to you.

Cased | Software Engineer and more | REMOTE/US | https://cased.com/jobs

- Backend Engineer / Ruby on Rails

Cased is the developer friendly way to handle production access. We build software to add approval workflows to sensitive operations, record what happened, and link identity providers to command line tools — without frustrating your team.

Our stack currently consists of Ruby on Rails, Go, Postgres, Kafka, and Elasticsearch.

Cased was founded in early 2020 by four former GitHub engineers, product managers, and leaders, with investment from Founders Fund and some of the most experienced angel investors in technology.

Apply on the website if interested or reach out to team [at] cased.com

Cased | Software Engineer and more | REMOTE/US | https://cased.com/jobs

- Backend Engineer

- Customer Success Engineer

Cased is the developer friendly way to handle production access. We build software to add approval workflows to sensitive operations, record what happened, and link identity providers to command line tools — without frustrating your team.

Our stack currently consists of Ruby on Rails, Go, Postgres, Kafka, and Elasticsearch. We use Terraform to manage our AWS.

Cased was founded in early 2020 by four former GitHub engineers, product managers, and leaders, with investment from Founders Fund and some of the most experienced angel investors in technology.

Apply on the website if interested or reach out to team [at] cased.com

I don't know if anyone has said digital touch is superior, I don't think it is. It's just a different way of solving the same problem. Can it be updated in the future unlike analog? Yep. Can you feel it with your hands like you can with analog? Nope.

I feel like I see more people saying first that digital is terrible and it should be analog, that they'll never get a car that has digital. The reasons they list are still true for analog though.

For example, here is Audi's A/C controls in all of their new vehicles:

https://ae01.alicdn.com/kf/HTB1iETfhnSPY1JjSZPcq6xIwpXaw/ZWE...

You not only have to take a hand off the steering wheel, but also look to see which lever you want/need to press. If I'm changing the temperature I know where the dial is, but I also have to look to see what I'm setting it to.

I'm surprised people here think analog controls are a bulletproof solution to the same problems you're criticizing Tesla for. I have a hunch that if there were YouTube videos watching people change climate control settings in their car they'd not only be required to take hand off the wheel but also look down and away for a small period of time. Tesla's isn't perfect but you get to keep both hands on the steering wheel and head looking straight, but down ever so slightly.

You can use the steering wheel and scroll up or down and you changed the temperature. No fooling around with touchscreen in traffic. It’s way better than any analog system I’ve used across Jeep’s and Audi’s.

You can control temperature, fan speed, brightness, and more all from the steering wheel.

I would recommend putting the "Are you coming?" above the fold, if not the very top of the page. I'm on a 27" monitor and had to scroll all the way to the bottom. If you want to increase conversion you'll probably find that by moving it above the image.

I would have loved to paid Travis CI for my personal private repositories I wanted to kept private, that I push to maybe 1-2 times a night on a good week. Setup is a breeze, interface is simple and straight to the point, integration works. But they priced their "Ideal for hobbyist projects" plan way out of budget for any hobbyist who just wants somewhere to run some code. $70 a month!? Make it $15, maybe $20 and you got yourself an annual subscriber.

I agree with your assessment of zero innovation or development.

I help manage a fairly large on-call rotation and we've actively been finding gaps in their product where we think the product should be of assistance. Through support tickets or even hopping on a call with them they didn't seem all that interested in hearing about it or finding a solution for it. I mostly just got a sales pitch about upgrading our plan for new reporting features.

Some of the problem we've frequently encountered:

1. Anyone who is offboarded from the company will just get removed during the next LDAP sync. This just moves everyone up a day for their next shift, no notifications so the visibility is hard. If you try to remove someone manually there is a pre-requisite that they get removed from any schedules they belong to manually.

2. Overrides do not coincide with a specific shift, but a point in time. While I understand why overrides work the way they do, when combined with the problem outlined above, can be a real pain to fix the rotation if someone is taken out since there is no Audit Log.

Here is a scenario that happens:

- Person A is on-call on 9/29

- Person B is on-call on 9/30

- Person C is on-call on 10/1

- Person D has an override for Person B since they couldn't make their shift. Person B now does not have a shift until it goes through the rotation again.

- Person A is offboarded after the override was configured.

- Person B's next on-call shift was moved up one day to 9/29. Person B now is on-call again, with no notification.

- Person C's next is now on-call on 9/30, which has an override from Person D and now is not on-call.

As you can see, it would be beneficial if there was at minimum a notification of a gap in the rotation through automated means, or at least allowing some overrides be tied to a specific persons shift rather than point in time.

We built a tool internally that every few minutes keeps a copy of the rotation and the order of its participants and detects any changes. If it does, it will open a GitHub issue with the user that was removed and the position in the rotation they were at before being offboarded. I often put myself in that spot to preserve the rotation from any breaking changes until the rotation goes through at which time I remove myself.

3. Assistance to find someone to take your shift. Say you get scheduled for 9/30 but find out you can't make it, with one click of the button PagerDuty could email 4-5 people about your shift time and ask if they can take it. Someone can accept it and it'd notify the person their shift has been covered, and others that the request was sent to it has been taken care of. It could factor in any fatigue or length of time someone has been on-call before it includes them in the pool of engineers to cover the shift.

4. Per schedule notification policies. Anyone can change their notification settings or how they're notified. For one particular rotation, we'd like to enforce certain minimums to make sure the push notification is sent immediately, and the engineer is called if not acknowledged in 5 minutes. Currently we cannot enforce that.

5. Audit Log. Who added X to the rotation? Who removed X from the rotation? Who changed the length of shifts? I could add more. For Enterprise level software an Audit Log would be great. They mention they have one internally but don't have plans to expose it for customers.

While their API allows you to build all these tools, having it a first-class part of their product would be wonderful.