This looks a lot like the default macOS calendar app, enough that I went back to Calendar.app and added back my calendars and now I'm using it again. Someone else mentioned no offline support which is a big thing for me, I like to clean up my calendar and other "productivity" related areas like Reminders, Notes, etc while I'm on long flights which often don't have internet access.
> You get a push notification that includes a join button 1 minute before your meetings
Why this still isn't an option in every calendar application in 2024 is beyond me.
My current Outlook is at least better than whatever I had before: Now I can at least choose a reminder 5 minutes before something start instead of only increments from $NOW.
Your comment convinced me to try Notion’s calendar but then when I went to add calendars, I’m only able to use a Google account, bummer. I have a Fastmail and an iCloud calendar which I’m guessing will come later to Notion.
I think it's only the "Share availability" functionality. You can drag times you are available, then it copies text to your clipboard like this, plus a booking link:
Would 30 min during any of these times (all in PST) work for you?
- Tomorrow Thu Jan 18, 3-5:45 PM
- Fri Jan 19, 12:15-5:45 PM
- Sat Jan 20, 8 AM - 5:45 PM
You can just let me know or confirm here: [link]
What's nice is that you can also change the time zone so the other person sees the suggestions in their time zone.
I don't think you can just do a generic scheduling link like Calendly, you have to pick the times first.
I was one of the users that went and reported this issue on Discord. I love Kagi but I was a bit disappointed to see that their status page showed everything was up and running. I think that made me a bit uneasy and it shows their status pages are not given priority during incidents that are affecting real users. I hope in the future the status page is accurately updated.
In the past, services I heavily rely on (e.g. Github), have updated their status pages immediately and this allows me to rest assured that people are aware of the issue and it's not an issue with my devices. When this happened with Kagi, I was looking up the nearest grocery stores open since we were getting snow later that day so it was almost like I got let down b/c I had to go to Google for this.
I will continue using Kagi b/c 99.9% of the other time I've used it, it has been better than Google but I hope the authors of the post-mortem do mean it when they say they'll be moving their status page code to a different service/platform.
And thanks again Zac for being transparent and writing this up. This is part of good engineering!
As an engineer on call, I have been in this conversation so many times:
"Hey, should we go red?"
"I don't know, are we sure it's an outage, or just a metrics issue?"
"How many users are affected again?"
"I can check, but I'm trying to read stack traces right now."
"Look, can we just report the issue?"
"Not sure which services to list in the outage"
...and so on. Basically, putting anything up on the status page is a conversation, and the conversation consumes engineer time and attention, and that's more time before the incident is resolved. You have to balance communication and actually fixing the damn thing, and it's not always clear what the right balance is.
If you have enough people, you can have a Technical Incident Manager handle the comms and you can throw additional engineers at the communications side of it, but that's not always possible. (Some systems are niche, underdocumented, underinstrumented, etc.)
My personal preference? Throw up a big vague "we're investigating a possible problem" at the first sign of trouble, and then fill in details (or retract it) at leisure. But none of the companies I've worked at like that idea, so... [shrug]
This is exactly why those status pages are almost always a lie. Either they need to be fully automated without some middle manager hemming and hawing, or they shouldn’t be there at all. From a customer’s perspective, I’ve been burned so many times on those status pages that I ignore them completely. I just assume they’re a lie. So I’ll contact support straight away - the very thing these status pages were intended to mitigate.
The simple fix is to have a “last update: date time”
Or you can build a team to automate everything and force everyone and everything into a rigid update frequency which becomes a metric that applies to everyone and becomes the bane of the existence of your whole engineering organization
I think your bit at the end is the most important.
ANY communication is better than no communication "everything is fine, it must be you" is the worst feeling in these cases. Especially if your business is reliant on said service and you can't figure out why you are borked (eg the github ones).
Your point highlights thinking about what's being designed.
everything is fine is different from nothing has been reported. A green is misleading, there should be no green as green is unknown, there should be nothing with a note that there's nothing, and that's not the same as a green light.
Once an ISP support person insisted that I drive down to the shop and buy a phone handset so I could confirm presence of a dial tone on a line that my vdsl modem had line sync on before they’d tell me their upstream provider had an outage. I was… unimpressed.
IMHO, any significant growth in 500s (that's what I was getting during the outage) warrants mention on status page. I've seen a lot of stuff, so if I see an acknowledged outage, I'll just wait for people to do their jobs. Stuff happens. If I see unacknowledged one, I get worried that people who need to know don't and that undermines my confidence in the whole setup. I'd never complain if status page says maybe there's a problem but I don't see one. I will complain in the opposite case.
Not necessarily. The situation can be genuinely unclear to the point where it is a judgement call, and then it becomes a matter of how to weigh the consequences.
Stage 1: Status is manually set. There may be various metrics around what requires an update, and there may be one or more layers of approval needed.
Problems: Delayed or missed updates. Customers complain that you're not being honest about outages.
Stage 2: Status is automatically set based on the outcome of some monitoring check or functional test.
Problems: Any issue with the system that performs the "up or not?" source of truth test can result in a status change regardless of whether an actual problem exists. "Override automatic status updates" becomes one of the first steps performed during incident response, turning this into "status is manually set, but with extra steps". Customers complain that you're not being honest about outages and latency still sucks.
Stage 3: Status is automatically set based on a consensus of results from tests run from multiple points scattered across the public internet.
Problems: You now have a network of remote nodes to maintain yourself or pay someone else to maintain. The more reliable you want this monitoring to be, the more you need to spend. The cost justification discussions in an enterprise get harder as that cost rises. Meanwhile, many customers continue to say you're not being honest because they can't tell the difference between a local issue and an actual outage. Some customers might notice better alignment between the status page and their experience, but they're content, so they have little motivation to reach out and thank you for the honesty.
Eventually, the monitoring service gets axed because we can just manually update the status page after all.
Stage 4: Status is manually set. There may be various metrics around what requires an update, and there may be one or more layers of approval needed.
Well, in the real world it might. It should trigger a bug creation and a fix to the code, but not an incident.
Now all of a sudden to decide this you need more complex and/or specific queries in your monitoring system (or a good ML-based alert system), so complexity is already going up.
If your service is returning 5xx, that is the the definition of a server error, of course that is degraded service. Instead we have pointless dashboards that are green an hour after everything is broken.
Returning 4xx on a client error isn't hard and is usually handled largely by your framework of choice.
> Returning 4xx on a client error isn't hard and is usually handled largely by your framework of choice.
> Your argument is a strawman
That's....super not true. Malformed requests with gibberish (or, more likely, hacker/pentest- generated) headers will cause e.g. Django to return 5xx easily.
That's just the example I'm familiar with, but cursory searching indicates reports of similar failures emitted by core framework or standard middleware code for Rails, Next.js, and Spring.
If input validation is not present in your framework of choice then the framework clearly has problems.
If you do not validate your inputs properly I am not sure what you are doing when you have a user facing applications of this size. Validating inputs is the lowest hanging fruit for preventing hacking threats.
Usually handled by the framework, you may have to write some code, I'd expect my saas provider to write code so that I know whether their service is available or not.
I'm only replying to the praise here - I too, although I haven't fully switched, had a very enticing moment with Kagi when it returned a result that couldn't even be found on Google at any page in the results. This really sold me on Kagi and I've been going back and forth with some queries, but I have to say that between LLMs, Perplexity, and Google often answering my queries right on the search page, I just don't have that many queries left for Kagi.
If Kagi would somehow merge with Perplexity, now that would be something.
Kagi does offer AI features in their higher subscription tier, including summary, research assistance, and a couple others. Plus I think they have basically a frontend for GPT-4 that uses their search engine for browsing, and they just added vision support to it today.
I don't subscribe to those features or any AI tool yet, just pointing out there could be a version of Kagi that is able to replace your Chatgpt sub and save you money
Is it as good as Perplexity though? I use ChatGPT for different purposes, I just thought that if Kagi would ally with Perplexity and benefit from its index (I'm not sure what Perplexity uses), it could get really good. I've only recently tried using Perplexity and I get more use out of it than I would with Kagi, it doesn't just do summarization, but I haven't seen what Kagi does with research assistance.
It's been a while since I've used Perplexity, but I've been finding the Kagi Assistant super useful. I'm on the ultimate plan, so I get access to the `Expert` assistant. It's been pretty great.
I envy your experiences with other services. I've never seen any service's status page show downtime when or even soon after I start experiencing it. Often they simply never show it at all.
I've built projects using React, Vue, and Svelte in the last year. All 3 are great in their own lane. React is a great starting point for larger teams to add on things to and it does start to be come its own beast within large teams.
For Vue, I think it's in the middle for me, it can be used by teams and can be used by solo devs and it seems to follow some very good practices. This I would take away from React only for the reason that each major version introduces some new concept that flips things on its head and I have feel like each new react project doesn't feel like an older one I worked on 2-3 years ago, and in some cases, not for the better.
Regarding Svelte, I wish I used it more. I built a project [1] that took me almost no time except fiddling around with github actions to get it up and running and it felt so naturally close to html/js when building, I was hardly looking up documentation or tutorials. Adding new features to it felt even more fun.
I've mainly stuck with React because of the large ecosystem but in 2024, it feels like once you find a good starting point with any of these, you should be able to build most apps with it.
Another thing to not shy away from is seeing that most large projects use React as an example, you can use something like ChatGPT to convert a react snippet to a vue or svelte snippet.
>This I would take away from React only for the reason that each major version introduces some new concept that flips things on its head
I don't think that's fair. The switch from classes to functions+hooks was a significant one. Besides from that I have never felt like the React team pushed anything on me, and even that was optional, class components still work. Now, the way I write React has certainly evolved but that applies to all my code..
Start with your most used devices, I'm guessing your phone and your main computer. Then the others will slowly follow. Once I switched my phone's default search to Kagi, it made a huge difference because I search a lot more while being on the go and being able to get good, no-spam, no-ads filled search results can be an amazing experience.
As someone who has had a blog for almost 10 years, with varying amounts of attention put towards it, this is what I can tell you.
- You're probably overthinking starting it. Just sign up for a blogging service, don't try to set up your own thing unless you're going to use that experience and write about it. I have had a blog in plain html/css, a PHP-backed one, a self-hosted Ghost, a self-hosted Wordpress, and ultimately, I settled on not self-hosting a Ghost instance and it has been the best way to write because paying $9/mo is a lot easier for me than to update deps or manage bugs when I'm trying to write about something on my mind.
- Don't worry about the negative feedback. If or when someone leaves negative feedback, this is your blog, delete it. It's the easiest way to get rid of it. Some people just have negative attitudes, don't let them bring you down too.
- And another comment on feedback, most people will take time to leave feedback that's positive or encouraging because they want you to keep writing.
- Write for yourself, like get someone off your chest, think through things in your head, don't let the wider internet audience be the judge of what you should be thinking about or writing about. It will help you grow as a writer and hopefully as a person too.
If you see this, I hope you go out there and start writing.
I'm thinking of mostly online things that come to mind that seem to be used by a lot of devs but don't have huge marketing budgets OR are not flashy in the typical sense:
- Google analytics alternatives, like Fathom, Plausible, Simple Analytics, Umami.
- Uptime monitoring services
- Logging, server-side logging, but these seem to be larger companies now like NewRelic, DataDog, Pagerduty
- Niche-specific file hosting, like UploadThing for Next.js, essentially a super simple way to host/upload assets for your Next.js project that removes some of the annoyances when dealing with uploading.
- For this one, I think startup costs might be high but I feel like being a domain registrar is a boring business that could have long term passive possibilities.
- For a web dev HN user, I think one of the more "boring" ideas is to have a web dev agency that focuses on an offline business whose owners are not tech savvy or care not to be. I'm in Portland, OR and I've noticed a few web dev agencies being the main ones creating basic/static websites for clients ranging from plumbing business, landscaping, and other home related repairs. Or for family run business that just care about a simple online presences (hours, contact info, some basic details about their business).
>a web dev agency that focuses on an offline business whose owners are not tech savvy or care not to be.
That is a very good idea, the problem I find with that is that is a FB, Twitter and/or IG page are actually going to drive more business than a website as for as word of mouth and referrals, which is where the real growth is. So then if you are to continue with them, you are getting into social media management and higher fees, which they didn't want to begin with.
The website does help with Google searches and is a general must have box to tick off.
At first I thought so too, a few months ago I got myself into a kitchen remodel and the most common way to find information about local businesses was their websites. Most didn’t have some social sites, a lot weren’t on Yelp (or the ones on Yelp were bad and paid to be on the top), and some didn’t even have up to date websites.
I have been experimenting with a website that might work for this but convincing people to sign up for it has been a wall to climb.
Yeah small businesses is a think an area where there is quite a bit of money being left on the table. Theoretically squarespace should be taking it, but clearly they're not. I see a lot of local businesses missing the super table-stakes stuff like a maps page with hours and a picture of the exterior. The kindof of stuff that really bumps you in search results and drives first-time visits. Another one is almost every restaurant does not have their menu items synchronized between the different takeout platforms (and their site if they have one), so they're missing sales or disrupting operations there definitely.
It's an annoying business to be in I'm sure, since you're dealing with lots of small clients directly, and there's data-entry stuff. The way to go is probably you focus on sales and automation and farm out the data-entry to less skilled labor? I think the premise that you're a real local human being who can be reached for support, and you can save them from lock-in by zipping up a static site for their nephew to run could be compelling for some small-business-owners. Hopefully you can stay competitive with the nephew since you amortize all the administration stuff over a bunch of tiny, low-traffic pages.
They are small businesses for a reason. They've already been contacted by tons of people who offer to help them with their obvious flaws, and already told those people to f off. Just because somebody has a business doesn't mean they have a brain.
Is it possible to be a domain registrar at all for an average guy? How much is the upfront cost? What services do I need to provide? Eg dealing with DNS?
There are some giant flat fees that ICANN charges to be a registrar:
> What you will pay to ICANN:
> US$3,500 application fee, which is non-refundable regardless of whether the application is approved, denied, or withdrawn. Following an initial review of completed application materials, ICANN will contact applicant with instructions on how to submit payment.
> US$4,000 yearly accreditation fee due upon approval and each year thereafter.
They also require you to prove that you can immediately obtain up to $70,000 under extreme circumstances, although exceptions are sometimes granted if you're a special case or particularly well-off.
And then there's also fees if you want to register cctlds, e.g. Internetstiftelsen which manages the .se & .nu TLDs requires 10,000 SEK for applying and then 5,000 SEK per year, along with having to meet certain criteria (regarding it security, data protection, etc.)