HN user

yati

1,051 karma

Humming like a fridge

yati.sagade@gmail.com

Posts65
Comments195
View on HN
shop.oreilly.com 6y ago

Software Engineering at Google (Book)

yati
5pts0
medium.com 7y ago

Moving fast, breaking things, and fixing them as quickly as possible

yati
1pts0
hop.perl.plover.com 9y ago

Higher-Order Perl

yati
4pts0
github.com 9y ago

Show HN: Send scribbles and pictures to an Emacs buffer from your Android phone

yati
1pts1
venturebeat.com 10y ago

Booking.com launches a chatbot to connect hotels and travelers

yati
1pts0
medium.com 10y ago

Taking Free Basics in Kenya for a Spin

yati
1pts0
github.com 10y ago

Show HN: Evolve expressions that evaluate to a target number

yati
8pts4
github.com 10y ago

Show HN: Evolve expressions that evaluate to a target number

yati
4pts0
youtu.be 10y ago

Fun to Imagine – Richard Feynman [video]

yati
1pts0
www.cs.umd.edu 10y ago

Correlation and Convolution (2005) [pdf]

yati
3pts0
research.microsoft.com 10y ago

A tutorial on learning with Bayesian networks (1996) [pdf]

yati
48pts4
yati-sagade.github.io 11y ago

Writing OpenCV Apps for Android Without an IDE

yati
3pts0
support.mozilla.org 11y ago

Firefox Hello

yati
1pts0
en.wikipedia.org 11y ago

Sunrise Problem

yati
3pts0
irl.cs.ucla.edu 11y ago

On Being the Right Size

yati
2pts0
blog.mozilla.org 12y ago

Mozilla submits comments on FCC net neutrality proposal

yati
3pts0
cs.stanford.edu 12y ago

How to Ask for a Favor: A Case Study on the Success of Altruistic Requests [pdf]

yati
3pts1
news.ycombinator.com 12y ago

Ask HN: How do you tackle back-pain?

yati
12pts16
sourceforge.net 12y ago

CPoll based C++ Server Pages

yati
1pts0
en.wikipedia.org 12y ago

Scanning Tunneling Microscope

yati
1pts0
news.ycombinator.com 12y ago

Ask HN: How have your popular Open Source projects affected your life?

yati
2pts0
www.zdnet.com 12y ago

Now is the time to switch back to Firefox

yati
9pts5
www.haskell.org 12y ago

All About Monads

yati
2pts0
gizmodo.com 12y ago

Steve Wozniak surprises girl with Mac delivery[video]

yati
1pts0
jezebel.com 12y ago

What Life Is Like When Getting Your Period Means You Are Shunned

yati
18pts3
3dgep.com 12y ago

Understanding Quaternions (2012)

yati
67pts20
www.cs.cmu.edu 12y ago

A CD spectrometer.

yati
2pts0
doc.cat-v.org 12y ago

The text editor Sam.

yati
3pts0
www-cdf.fnal.gov 12y ago

Zombies(5)

yati
1pts0
www.learnsanskrit.org 12y ago

Learn Sanskrit Online

yati
78pts79

Much of theoretical computer science is math, like much of modern theoretical physics is also math. “Computational science” brings up images of computational complexity theory, computability, information theory, distributed consensus, type theory etc.

So maybe not a marketing ploy.

I was thinking we could run what is being said in a call from an unknown number through a scam detector. The detector, upon noticing an established fingerprint of scam activity, would alert the caller.

There is Call Screen in the native Android Phone app that does this, but even better: it can take the call on your behalf, and warn you based on what the other party says. It is available in the US, but it seems only for Pixel devices?

https://support.google.com/phoneapp/answer/9118387?hl=en&ref...

My impression (I work at Google) is that internal interfaces to some of these services have a lot of Google-specific stuff that are hard to map to non-Google requirements.

You also have to see how easy these will be to use, with a dedicated app and all, compared to hiding a camera. In practice, if I spot a hidden cam on someone interacting with me in public, I’d call them out, but socially it would e super awkward to ask someone to put their glasses away. But I agree the FB association might be making people extra uncomfortable (can’t blame them!)

I gave up on it after the free trial. The search extremely shitty for anything except popular Western music, and oh the recommendations! You like some Shiv Kumar Sharma? How about also trying $random_hiphop_dude?

YT Music has its flaws, but there is simply nothing that comes close to music discovery there.

Yeah, more like 20 (19 CHF/h). Switzerland is expensive, and Starbucks ensures that their prices reflect that -- "caramel frappuccino" is 8.90 CHF for the big bucket of a cup they have, while the same thing in the US is what, 5? They could easily pay their employees more if they wanted, but they don't and then talk about this "partner fair ethical something something" bullshit. Like I said, there are plenty of fast food/coffee joints here that do pay their employees well.

Re. the pregnant part, I confirmed and it was not technically firing, just not renewing the contract upon learning.

Yes I confirmed, this was what happened. The shitty part is that there was no obligation for this person to declare, they did it to be transparent, and their contract was never renewed. This in a store that is understaffed, constantly hiring with high churn.

edit: I noticed that they hire a lot of expats, and probably also why get away with it: If you're an expat who e.g., followed your (unmarried) partner into Switzerland, boy do you have to jump through hoops to stay. To these people, Starbucks is actually a lifeline.

A spokesperson for Starbucks said in an email in response to the union organizing drive: “While Starbucks respects the free choice of our partners, we firmly believe that our work environment, coupled with our outstanding compensation and benefits, makes unions unnecessary at Starbucks. We respect our partners’ right to organize but believe that they would not find it necessary given our pro-partner environment.”

I don’t know about the US, but that statement is such a joke in Switzerland Starbucks. “Partners” are fired the moment they declare they are pregnant, the pay is minimum wages (compared to even obscure fast food chains here, that pay significantly above the min) and stressful shifts are the norm due to understaffing.

The “perks”? Your drinks are generously on the fucking house, and you get to take home a bag of coffee beans every week. Source: several people I know well who are baristas.

Why flag the account and report it if the only goal is to politely prevent people from uploading? Like you say, a “code change can do anything” and we simply don’t know how the current feature is done or how it will evolve.

edit: like many comments here already say, reporting doesn’t sound terrible for CSAM, but nothing about the feature guarantees it wont be extended to other kind of content.

I grew up and studied in Kolkata, and have lived elsewhere in India, but I haven’t quite seen anything like the daily adda outside of West Bengal. The article is spot on with most of us not even realizing how special it is unless we move out.

मुफ़्त (muft) means free of cost, मुक्त (mukt) is free as in freedom.

मुफ़्त नहीं। मुक्त (muft nehi, mukt) reads like "not free (of charge), but free as in freedom."

I was replying to the comment above -- Go or Rust did not simply rename exception related keywords, they have a completely different approach.

I don't know of any language that does mudane error handling with exceptions that is not a mess. C++, for instance, is extremely difficult to write exception safe code in.

Panic/recover isn't used nearly as much for error handling in Go as in Java. An online resource being unreachable does not cause the net package functions to panic.

Git+your OS make it easy to acquire this software, Your browser and OS collude together to make it easy to run it, The elecric supply to your house makes it easy to run the computer that runs the OS, ...

Do you really want a world where this scumbags should go after everything that "makes it easy" to do illegal activities?

Sorry, I cannot exhaustively list all possible issues with the country's politicians everytime I have something to say about the current government that is supposed to be accountable to Indians (because they are in power, Sonia Gandhi is not!).

Again, I've seen this pattern: Question this government and immediately be branded as a Congress/AAP/$party sympathizer. At best people ask questions like yours, and at worst they come to an agreement that you should immediately leave India and go to Pakistan. This for questioning your government.

Why does speaking up about the Indian government inevitably bring up questions like this? Ambani's relationship with this government bothers me a lot (among many other things about any government, particularly this one).

I used to work at a Perl shop. The language makes it so easy to use regexes that you risk abusing them, but nevertheless that exposure has helped me become quite proficient with regexes. I use Perl one liners whenever I need to deal with text data on the command line, so that keeps me exposed to regexes.

Yes, I think this is what they'd argue too. But something to think about: Recently Google was asked (in France[1]) to start paying publishers for including news snippets in search results. That data is also "public" in the sense that it is available for crawling, but it is still owned by creators who can (and did) exercise rights to limit use. Presence of a third platform like Facebook further complicates this (I don't know if you sign off your rights to your photos when you upload them to FB for example).

[1] https://arstechnica.com/tech-policy/2020/04/french-regulator...

I see, I guess then that's where we disagree. It is very confusing for people from my limited experience, for little gain. Plus you make it harder to do things like put these tokens in e.g., a vector without resorting to decltype.

Going back to the original point i was making with this example, I still think this was probably not a capability consciously designed in the language.

I kind of understand what you describe, but I still don't understand why the type needs to be private. You can return opaque objects of a public type just as well for this job, can't you?

    class Token {
      virtual ~Token();
      protected:
        friend class MyClass;
        ...
        /* all your state */
    };
> what is a callback lambda but private state?

You can (and do) program to the callback's interface -- say you ask for an std::function<void()>, and the user gives you that. What is behind the function (private state or not) is not your concern, you simply perform an public operation (calling it) on a public interface (i.e., via std::function).

I am curious how you achieve encapsulation this way, please elaborate (I tried to find uses for this pattern. Even the author of the code I'm talking about, and other much better C++ programmers than myself seemed to call this an oversight rather than intent).

You can prevent instantiation of the nested type already by using private ctors and friending the wrapper class from this type, while keeping the class itself public. That is a much cleaner expression of intent. I believe that if a class is usable via its interface, it is public any way (in that you will need to go and change all uses of this object should you decide to change the nested type's API, whether it is declared private or not).

And also note that binding to the object at all has been possible only after C++11, while this "feature" works with earlier standards. That rules out the possibility of this being designed into the language with the express goal of achieving what you say (it doesn't matter, but just pointing out).

You can do member access into the object! That breaks encapsulation or whatever was the reason to keep the type private. Passing it around usefully isn't possible except to friend or member functions of the same class (since you can't write a function taking a type T that is private to your scope). In fact the only reason I could think of for doing something like this is to prevent people from including this type in their APIs, while still allowing to work with the object. But there are better ways to do that, including just exposing what the little object would expose via direct method calls on the enclosing class.

This isn't similar to C handles. There is usually a public API around the kind of the handle (e.g., the file oriented syscalls that works with file descriptor integers). In such cases, C handles are more like "this" pointers with an associated API.

Also, it cannot be the intent of allowing this pattern to implement opaque handles, as you can bind to them only after C++11 (auto), while such malformed code still compiles (including member access into the returned temporary) with -std=c++98.

I also use C++ everyday, and find it quite powerful, but I also feel that it is ill designed. The other day I had to work with code that involved a public member function that returns a private type. You can only bind to the return value of this function with auto (because the type is private), but can otherwise do anything with the object. Why this is allowed is beyond me.

You're right that much of the software we use is written in C++, for good reasons, but asking people to "use a product of another language" just because they are critical (in a not so nice way, admitted) of it is going a bit too far. It's like asking someone to move to a different country because they think their system is "broken beyond repair".

There's some boilerplate (a bit less compared to Go) required to deal with errors in Rust too, but additionally, the compiler can enforce you can't get at the return value without dealing with the error variant. I just checked that there are also static checkers for Go that'll tell you if you forgot to check an error.

I agree with your pointa. A note though, I also used to think exceptions are "essential", but after working with code that forbids exceptions and uses explicit error status passing, I find exceptions very awkward to work with. I find them a very lazy way of doing error propagation, which in turn encourages lazy error handling.

The Afsluitdijk 7 years ago

I like how the concept image of the new A7 highway prominently also shows bike lanes with a couple of bikers :)