Recent submissions

Comment · 3 years ago
The archive.ph links never work for me. The are you human, check always gets stuck in a loop. Is there there any way around that?
Comment · 3 years ago
Comment · 3 years ago
I don't think discord is a valid replacement. One of the best parts of reddit was the easily browsable/searchable Forum like threading. Where there are communities for a given theme, and threads branching off of that group. Discord is great for realtime chat, but a significant pain for async conversations. In general for information access I personally don't like to search through chats because the threading is too shallow, and conversations are had at the root, aka group level.
Comment · 3 years ago
Why do you not want to cook the proteins? Does it break them down to uselessness, or do the become harmful?
Comment · 4 years ago
I found this a good review of the physical and chemical impact quitting marijuana. https://youtu.be/7u_cm5b1s7Y

I'd argue that the chemical withdrawal effects of marijuana, are nothing compared to habitual smoking, alcohol or other "hard" drug use. But there are still some chemical withdrawal effects.

Personally I've had Minor irritability after not having an edible for a few days if I've been consistently having them nearly daily for few days. But I've also realized this, and moderate use more to only once or twice a week, and only 5-10mg at a time. I've grown to like the feel of 5mg in the evening overall. Accounting for the blah feeling the next morning/day.

Comment · 4 years ago
I recently had a similar experience. I purchased a bag of citric acid, and it was boldly labeled as non-GMO and "approved for use with organic food".
Comment · 4 years ago
The only time `IsSet` would be false is when `NewOption` was not used to initialize the value.

e.g.

  var o Option[int32]
or could have `None` helper

  func None[T any]() Option[T] { return Option[T]{} }

  o := None[int32]()
Comment · 4 years ago
Another way to do `Option` without pointers could be similar to the following with a struct with two members.

  type Option[T any] struct {
      v T
      isSet bool
  }
  
  func NewOption[T any](v T) Option[T] {
      return Option[T]{
          v: v,
          isSet: true,
      }
  }
  
  func (o Option[T]) Get() (v T) {
      if !o.isSet {
          return v
      }
      return o.v
  }
  
  func (o Option[T]) IsSet() bool { return o.isSet }

With this pattern you're able to use `Option` as a value without pointers.

  var o Option[int32]
  
  o = NewOption(int32(1))
  
  fmt.Println("value:", o.Get())
  fmt.Println("is set:", o.IsSet())
Alternative separate `Get` and `IsSet` methods, is to combine them into one, similar to map look up pattern.

  func (o Option[T]) Get() (v T, isSet bool) {
      if !o.isSet {
          return v, false
      }
      return o.v, true
  }
  
  var o Options[int32]
  v, ok := o.Get() // zero, false
  
  o = NewOption(int32(1))
  v, ok = o.Get() // 1, true
Comment · 6 years ago
Comment · 6 years ago
What do you use for motion detection? I've found the Unifi NRV motion detection to be very poor. Especially raining at night.
Comment · 8 years ago
Have you considered enabling parallel tests for that package? It let's test functions run in parallel with each other. Might address some of the issue with the performance.
Comment · 9 years ago
Na that's a bunch of BS Amazon came up with to validate their position. There is nothing stopping Amazon from putting Chromecast app support other than Amazon. The only thing I can guess is Amazon wanted chromecast to enable support for their player format and chromecast didnt'.
Comment · 10 years ago
I've been at Amazon for a bit over 5 years with 12 years total. Joined with about 7 years of prior experience. From the other post I see I did a very poor job of negotiating when I first joined with my experience. I've always saved the stock and considered it more retirement savings than spending cash.

Hired: 2011

- Level: SDE I (4)

- Location: San Francisco

- Salary: $96k base, $20k bonus, relocation, ~160 stock over 4 years.

- Average yearly total comp: ~ $150k

Promoted: 2013

- Level: SDE II (5)

- Location: San Francisco

- Salary: $110k base, 168 stock

- Average yearly total comp: ~ $170k

Relocated: 2015

- Level: SDE II (5)

- Location: Seattle

- Salary: $125 base, ~160 stock, relocation

- Average yearly total comp: ~ $190k

Comment · 11 years ago
Comment · 11 years ago
Not sure what input I provided wrong, or if its just the services Google is partnering with, but all the quotes provided are 2-3 times more than what I pay now.

Live from the official Hacker News API

A modern reader for Hacker News · SvelteKit + Skeleton