HNHacker News
TopNewBestAskShowJobs

alex_smart

1,323 karma · joined April 30, 2014

submissionscomments
alex_smart··on Americans are poorly served by their grocery stores
Hating on raisins seems like a uniquely American tradition to me. They sure are loved in India and the middle east. They are a common ingredient (along with dried plums) in rice dishes for some delicious sweetness. Not to forget, they pair perfectly with cashews and walnuts.
alex_smart··on Google cancelled a talk on caste bias
>So, a reasonable question is, "Well, what does a real instance of caste-based discrimination look like?"

Given that the example came in the context of this question, the answer is a resounding "not like that".

alex_smart··on Google cancelled a talk on caste bias
I don't think any of those things are true. Indians in general are hyper "hierarchy" aware (not just with respect to caste btw). They just feel the need to know how to place you.

I'm also not lower caste (or particularly upper caste for that matter) and my parents were doctors, so my family was relatively well-off in a very, very poor part of India, so almost all other social indicators would tell them to place me higher in social status. So, the experience of others would vary.

alex_smart··on Google cancelled a talk on caste bias
Oh, ffs, that is just ridiculous.
alex_smart··on VSCodium – Free/Libre Open Source Software Binaries of VS Code
The remote development plugin in particular is potentially very commericially valueable.
alex_smart··on Google cancelled a talk on caste bias
>I'm a Tamil Brahmin (Brahmin being the highest caste) and I'm one of the darkest skinned people in India.

Do you have ancestral home in Mylapore? If not you're not real Tam-Brahm. (JK obviously)

alex_smart··on Google cancelled a talk on caste bias
>As a manager, if you see one of your directs singeling out one of his emoloyees, it is your job to find out why

You are just saying that it is the job of the super-manager to find out why without answering how the job is supposed to be carried out. The manager says he is acting against the employee because of their lack of performance or insubordination. The employee says the manager is discriminating against them based on caste. You're the super-manager, what do you do?

alex_smart··on Google cancelled a talk on caste bias
Caste-based discrimination would be a pretty serious charge against a manager, surely sufficient grounds for termination. We need to have a talk of how we are going to determine when it's happening if we are seriously considering policies to act against it.
alex_smart··on Google cancelled a talk on caste bias
>If caste might be at play

Again, how is that determined? Do you assume that a caste angle might be at play every time the manager is upper caste and the employee's of lower caste? Do you wait for the manager to be stupid enough to outright utter a casteist slur at the workplace?

alex_smart··on Google cancelled a talk on caste bias
How is Dr Subramanian relevant to this article again?
alex_smart··on Google cancelled a talk on caste bias
I don't know, in my personal case, this was definitely a regional movement - with plenty of upper caste families also giving their children no surname or a generic non-caste based ones. That is why you will see a lot more "Kumars" and "Anands" and "Ranjans" and "Jyotis" from Bihar than from other parts of the country.
alex_smart··on Google cancelled a talk on caste bias
How exactly would you determine that a manager is acting against an employee under them due to an internal caste bias and not due to lack of performance or insubordination (or whatever other valid grounds there are for acting against an employee)?
alex_smart··on Google cancelled a talk on caste bias
Are we going to lightly dismiss the prosecution of polytheists in many Islamic countries?

>Of course, it goes without saying, perceiving you belong to the true faith does not justify violence or discrimination. But faith-based identification is not analogous to a caste system.

They were clearly talking about faith-based discrimination. Why would you assume that they were talking about faith-based identification, especially given the context?

alex_smart··on Google cancelled a talk on caste bias
Usually you know someone's caste from their last name.

I am someone who was not given a caste-based last name because my parents were influenced by a regional movement against caste. (I didn't even have a last name to begin with but eventually added a non caste-based one to avoid visa issues.) Whenever I traveled by train and chatted up with a co-passenger, almost surely they would ask my name and would never be satisfied with just knowing my first name. They would get visibly confused when I would tell them I didn't have a last name.

Edit: Curiously, based on the last name of the person (Soundarajan) whose talk got cancelled, I would actually have guessed that they were upper caste (Brahmin - the highest).

alex_smart··on A vision of a multi-threaded Emacs
You don't need to do all that. Just run emacsclient with `emacsclient -a ""`.

From the man page:

    -a, --alternate-editor=COMMAND
           If  the  Emacs  server  is  not  running, run the specified shell command instead.  This can also be specified via the ALTERNATE_EDITOR environment variable.  If the value of ALTERNATE_EDITOR is the empty string, run
           "emacs --daemon" to start Emacs in daemon mode, and try to connect to it.
alex_smart··on You can no longer purchase Kindle books through the Amazon app on Android
>I've never had a Windows device tell me it can't play Netflix in 1080p because the browser doesn't have Widevine L1 DRM support.

Afaik, Netflix does not by officially support 1080p on Chrome on Windows.

alex_smart··on A vision of a multi-threaded Emacs
> Emacs already supports asynchronous I/O and has sentinels for exactly that. However, not everything that runs on Emacs is taking advantage of that functionality. It is therefore up to you, to use the proper package (or not use the wrong one)

>Finally for LSP, I always recommend Eglot over LSP Mode

As far as I can tell, Eglot also just blocks waiting for the server response.

Unfortunately, that is the current state of the emacs package ecosystem. Org mode freezes emacs. Magit freezes emacs. Most package writers just don't bother writing their packages with asynchronous I/O in mind. There is no point blaming the user.

alex_smart··on A vision of a multi-threaded Emacs
You do not have to start a new instance of Emacs every time. You can tell emacs to start a server and then use emacsclient to connect to your already running instance of emacs.
alex_smart··on A vision of a multi-threaded Emacs
>It seems that Emacs does the check automatically, no?

Nope, it for sure does not.

alex_smart··on A vision of a multi-threaded Emacs
Don't check for package updates during startup? Setup a cron job to upgrade the packages while you are asleep?
alex_smart··on A vision of a multi-threaded Emacs
If your lsp-client code is doing anything where you need binding with a native library or the speed of emacs lisp is a factor, you are doing it wrong. All an lsp-client needs to do is make requests to the lsp-server, listen to the responses and update the UI. It literally doesn't matter how slow emacs-lisp is.

The only way an lsp-client could be slow is by making a request to the server and then blocking on the response - which is wrong and the package writer's fault because they are not using the asynchronous api emacs provides for communicating with a process.

alex_smart··on A vision of a multi-threaded Emacs
Gnus has been around since the mid 90s (and predates the addition of asynchronous url-retrieve api to emacs). It is unfair to compare it with packages that written in the last couple of years.

I don't use Gnus so I have never bothered looking at its internals, but if it is locking your emacs for twenty seconds checking email, it is probably not doing much asynchronously. It is notoriously hard to convert existing synchronous code to asynchronous without using threads. Promises/futures/continuations/whatever-you-want-to-call-them are a pretty all in affair. Not having the time investment that would take to convert a 100k line codebase to async does not make Lars Magne Ingebrigtsen a substandard Emacs Lisp coder.

alex_smart··on Ask HN: How to do self-study on Physics
>However I would not recommend the Feynman lectures (and, based on the preface, I think Feynman would agree). I've read about a 1/3 of the series and while I have to say they are some of the greatest technical writing in history, they are not the greatest pedagogical material. I do believe everyone should read at least some of the Feynman lectures, just not as a means of learning physics.

As a counterpoint, I am someone who did self-learn physics from Feynman's lectures as a teenager and I would highly recommend it to others to at least give it a try.

You have to appreciate just how much of a factor pure interest and enthusiasm for a subject is in learning it - and Feynman's lectures are just amazing for sparking that joy in physics. I discovered Feynman's lectures about two months into my first year of high school and it became my primary textbook. I just found the other texts too goddamned boring in comparison.

alex_smart··on How Google will spend $1M on the internet for you
80% of Google's revenue comes from its ad business. Maybe we should be thinking of Google primarily as an advertising company.
alex_smart··on Today’s JavaScript, from an outsider’s perspective (2020)
I think in this particular case, the problem was just picking the wrong tool for the job. Python is the primary language used for data science these days, but it is not particularly designed for it. It is a general purpose programming language. If they had chosen something like R, their path would have been a lot smoother.
alex_smart··on Show HN: VideoMentions – Search YouTube based on the spoken words in videos
>I do client-side in-memory caching of videos data, only.

This works only if the user does not navigate from and back to your website or refresh the page, but if they do, you make the same api calls all over again. You should set HTTP Cache-Control headers in your response from the server, so that the browser knows that it can serve that data from its cache and does not need to make those requests again. You would then probably not need the client-side in-memory cache at all.

alex_smart··on Show HN: VideoMentions – Search YouTube based on the spoken words in videos
Based purely on the speed of the results, I believe that the crawling is happening in real time.

The search is scoped by channel, so the closed-caption files for all the videos in the channel are downloaded and searched for on the fly.

Edit: Wow, thanks to dev tools, I can see that the website is downloading the transcript and metadata for all the videos from the channel to the client. So the search is happening client-side!!

alex_smart··on Where's All the Code?
I feel like this tool could significantly benefit from a ncdu like interface.

ncdu itself can accept a json file in a specific format [1]. Perhaps it will be a good idea to add an option to export the data in this format?

[1] https://dev.yorhel.nl/ncdu/jsonfmt

alex_smart··on Git ignores .gitignore with .gitignore in .gitignore
>Ignored files appear grey but they’re still showing up for me.

They show up greyed out in the explorer yes, but they won't appear when you navigate with "Go to File" (ctrl+p) and they won't be searched through with "Search" (ctrl+shift+f).

alex_smart··on Git ignores .gitignore with .gitignore in .gitignore
>I certainly don’t want a meaningful code change sandwiched between an open editor swap file

We are specifically not talking about the junk files created by editors and ides here.

We are talking about things like notes and exploratory code that you have written that you have no intention of committing, at least not right away. Why wouldn't you want to see them in your `git status`?

Another problem with putting such files in gitignore is that those files will become invisible to an increasingly large number of tools (vscode, ag aka silversearcher, ripgrep, emacs's projectile to name a few) that rely on gitignore to filter out unwanted files. So now, as far as these tools are concerned you have put your notes and experiments in the same category of files as editor junk and build artifacts. You either search them all or none at all.

← PreviousPage 9 of 19Next →