HNHacker News
TopNewBestAskShowJobs

gopalv

4,101 karma · joined August 20, 2012

@php.net / @apache.org / @isotopes.ai

https://aidnn.ai

submissionscomments
gopalv··on Are efficiency and horizontal scalability at odds?
> Computers have gotten a lot faster, even if the clock speed is not that much faster

We're not stagnating but the same code I thought was too slow in 1998 was good enough in 2008, which is probably not true for code I would've thrown away in 2015.

The only place where that has happened in the last decade is for IOPS - old IOPS heavy code which would have been rewritten with group-commit tricks is probably slower than a naive implementation that fsync'd all the time. A 2015 first cut of IO code probably beats the spinning disk optimized version from the same year on modern hardware.

The clock-speed comment is totally on the money though - a lot of the clocks were spent waiting for memory latencies and those have improved significantly across the years particularly if you use an Apple Silicon style memory which is physically closer in a light cone from the DIMMs of the past.

gopalv··on The Prophet of Parking: A eulogy for the great Donald Shoup
> Waymo will get big enough in San Francisco to affect this

SF public transportation is "good enough" that owning a car in SF is already a decision outside of pure transportation needs.

I lived in SoMA for 2+ years without a car using ZipCar occasionally to drive to SouthBay, which was cheaper than the car payment, insurance and the parking fee put together. Plus my commute was to Palo Alto which was neat because every Caltrain out of SF stopped in PA in the mornings, I used the bullets both ways every day.

Bicycles got me and my partner everywhere, faster and more conveniently (including in a bus or BART). We even went by to Napa on the ferry with bikes on it (once the Vine Trail cycle path connects all the way to Vallejo, I want to do it again - for now you can put your bike on a bus from Vallejo, no problem).

The Lyft would be used for the Costco runs or to lug things out of Tech Shop back home, when working on something bulkier.

Then I had a kid + moved to Mission bay which was still great for my Caltrain commute, but the kid changed the way I could just grab an Uber. There was no travelling light anymore.

I struggled to use a cab because we had to drag stroller car-seat everywhere we went with the kid and often even when didn't have the kid, because you'd pick them up on the way back.

The car was bought, even though it was a bad deal financially simply because it offered a fixed set of storage items we always had.

Even getting from location to location, the car was the slower option, it didn't make any sense except to serve as a home base for all things you needed to have with you.

gopalv··on Undergraduate shows that searches within hash tables can be much faster
> We need to fight over whether .999 repeating == 1.000 repeating

Because we've already agreed that 9 repeating the other way is equal to -1.

It must be because if you add 1, you get an infinite string of zeroes.

gopalv··on Mac(OS)talgia
> this link specifically celebrates the user interface of the later versions of non-OSX MacOS. This doesn't really have a relation to the stability of the OS.

"Very pretty but can't do much" was a general take on the Mac OS cube of the day.

The lack of a fan or any decent cooling, the "lack of a floppy disk" (for those of us who didn't use Zip drives), it was pretty to look at but hard to work with.

We had one to run FrameMaker on, but beyond type-setting (& fonts), it was a shiny thing which was treated like a sunday sports car.

Where I was, the Tex user group is what eventually materialized into a Linux User group and there was simultaneously love for the screen, rendering and fonts for the Mac, but near hatred at having to use it to professionally typeset things.

Math publications quickly jumped ship out of Adobe due to OS 9, but very few came back to the OS X versions until years later when Apple started making really good laptops with fast hardware.

gopalv··on I built an open source AI tool to find my autoimmune disease
The doctor's prescription is probably applicable even to this day.

Food, bitter beer, exercise, early bedtimes and "stop stuffing your head with things you don't understand".

> I followed the directions, with the happy result—speaking for myself—that my life was preserved, and is still going on.

I read the book as part of my English - II in school, but no part stuck to me as much as the Liver cure for children.

gopalv··on 1% Equity for Founding Engineers Is BS
> Sure, if you hit the jackpot and join Facebook, then you're set for life.

Back in 2008 when Yahoo was laying off people, joining Facebook was something people did out of desperation.

That was an 85k/year job with an expectation of "all work, no life".

It was not seen as a good option, but most of the time the only place that was hiring during the Great Recession.

A decade later, it was a completely different thing. Yahoo was dead, Google+ (Orkut) had failed & FB had Instagram & Whatsapp.

gopalv··on VSCode’s SSH agent is bananas
The way most people learned this is because somewhere in the middle of last year, VSCode's node install stopped working with the old glibc.

https://github.com/microsoft/vscode/issues/201129

Most people who hit this hard pinned their vscode to 1.85 & it took a while till this turned into a simple nag bar on top of their editor.

gopalv··on Why Startup Wealth Never Trickles Down to Employees
> The executives were earning significantly more than the employees who were keeping the company afloat.

The "Rules for Rulers" CGP Grey video[1] dug a fair bit into the difference between being a resource vs being a key player and how key players are not exactly the biggest contributors in a system.

This is unfortunately a rational result, so you cannot apply a moral or ideological argument to it & attempt to sway smart people enough.

"Take the throne to act, and the throne acts upon you. Accept that or turn back now before we discuss, The Rules for Rulers."

[1] - https://www.youtube.com/watch?v=rStL7niR7gs

gopalv··on Minimum effective dose
> Being the best at one thing is very different from being good at everything, so it's unclear how that advice applies to your children.

My kid pushes too hard when he realizes he's plateau'd at some skill level and then gets disappointed at the steepness of the learning curve.

It'll go from chess to skiing, then it is swimming and now he's running a trail 10k in March. While he's able to say Good morning in everything from Esperanto to Klingon, by way of Welsh and Japanese, he's not gotten fluent at any language so far.

Not that any of that is bad in itself, but he goes into a maximum-effort "not fun" mode when he gets moderately good at anything.

The "not fun" mode kills the joy and then the activity becomes almost painful.

Mostly I try to help him stay in the happy zones with "A little is enough" instead of setting himself up for failure constantly like this, by failing his own expectations.

The younger one is obviously out to out-compete the older, so hopefully I only have to do this teaching once for both of them.

gopalv··on Minimum effective dose
> Nobody says we have to be good at everything we do

This is advice I have to push on my kids constantly, because they are obsessed with finding that one thing they are better than everyone else in the world.

"Do some" is not advice I got as a kid, but my mom eventually figured it out and told me that when was in my mid 20s or something.

Her words (from Malayalam) are best translated as "For whom a little is not enough, nothing is ever enough".

I think that's true for everything from money to self-worth. Enough is too hard to have.

gopalv··on Bzip3: A spiritual successor to BZip2
> BWT be combined with zstd

BWT can be combined with anything which does RLE and get a benefit.

What does it does is give RLE more to work with.

gopalv··on Adding iodine to salt played a role in cognitive improvements: research (2013)
> why don't they make iodized flaky salt?

They'll figure out a way eventually, but it is definitely harder.

It is always easy to grow something uniform as a pure crystal, without fault lines on them causing crumbling.

As a kid who spent a lot of time with chemistry, it used to fascinate me that you can crystallize out a clean salt crystal out of a mix of potassium permanganate and salt, the salt grain will grow pretty much pure salt on it without a hint of purple (also burned my nose skin off collecting chlorine from the exercise, talk to your local chemistry teacher and find out why).

I never succeeded in making a colored salt transparent crystal.

gopalv··on Adding iodine to salt played a role in cognitive improvements: research (2013)
Burger King continued to use iodized salt consistently, while McDonalds, Wendys etc have switched to flakier salts for their fries which cuts total sodium overall by being flatter instead of grainy, but without any iodine added to it.

The downward trend in fast food began in the 70s, once sodium was seen as bad, so more salty tasting thin crystals were preferred.

[1] - https://pubmed.ncbi.nlm.nih.gov/20634172/ (on researchgate)

gopalv··on Boom XB-1 First Supersonic Flight [video]
NYC to LA in 3 hours would be an 8 AM flight which would land at 8 AM, same day.

Just mind boggling to think of, no trouble finding 100 people daily who want to do a day-trip to California.

gopalv··on Ask HN: Anyone want models snail-mailed to them?
In the days of 56kbps internet days in India, there was a BBS (run by a cabal of sorts) who would download a linux distro CD and mail you a disk.

The email would have a link to the original .torrent and if a part of a disk was somehow corrupted, you could download just that chunk via BitTorrent instead of redownloading the whole thing or waiting for a new disk out.

Independently sourced checksums fixes most of the trust issues and a block-by-block checksum like what torrents had would allow for repair as well.

gopalv··on Apache Iceberg
> Hilbert-curve based clustering which solves a lot of the downsides of hive partitioning

Yes, that solved the 2-column high NDV partitioning issue - if you had your ip traffic sorted on destination or source, you need Z-curves, which are a little easier with bit twiddling for fixed types to do the same thing.

Hive would write a large number of small files when partitioned like that or you lose efficiencies when scanning on the non-partitioned column.

This does fix the high NDV issue, but in general Netflix wrote hidden partitioning in specifically to avoid sorting on high NDV columns and to reduce the sort complexity on writes (most daily writes won't need any partitioned inserts at all).

While clustering on timestamp will force a sort even if it is a single day.

gopalv··on Apache Iceberg
Hidden partitioning is the most interesting Iceberg feature, because most of the very large datasets are timeseries fact tables.

I don't remember seeing that in Delta Lake [1], which is probably because the industry standard benchmarks use date as a column (tpc-h) or join date as a dimension table (tpc-ds) and do not use timestamp ranges instead of dates.

[1] - https://github.com/delta-io/delta/issues/490

gopalv··on Top Mistakes Made by IT Architects
> They are still often hands-on, and have a healthy fear of becoming the Ivory Tower version, but what comes next for them?

If you can write a title for them, this is usually where a Fellow or Distinguished Engineer lands.

Most Distinguished Engineers I know are actually VP/Director levels of leadership talent, but walk up the whole ladder from building things to deciding strategy every couple of weeks.

I didn't understand the value of a title either, until I was given a big title + a large cash award in an all hands, with the goal of putting me to work in a very specific way.

The title gave me clout when dealing with middle management and then I was dropped wherever there was an ongoing crisis, told me to make decisions without worrying about my job security (including giving me accelerated vesting safeguards, so firing me to appease a VP would be very expensive).

The article ends with the exact same idea that /“Am I willing and able to be there at 3 a.m. to resolve urgent breakdowns in the very system I created?”/

That gets taken the wrong way sometimes - if you optimize to avoid the "need to wake up at 3 AM, being the only person with enough knowledge to fix it", most other things fall in place.

gopalv··on Master the Art of the Product Manager 'No'
This sort of advice is parodied in "Yes, Prime Minister" as the 4 step strategy for "crisis management"

1: Don't worry, nothing's going to happen.

2: Something may be happen but we should wait and see

3: Maybe we should do something about it, but there is no clear action

4: Maybe there was something we could've done, but it's too late now

Stringing along a bunch of people who think they are being heard and listened to when you are not is a morale killer when the tide goes out & we see who's been swimming naked.

gopalv··on Why Senior Engineers Should Stay ICs
If you're a senior IC who does strategy, then the term "IC" is misapplied. You want to be a 1/2x engineer, not a 10x engineer.

I was a Sr Principal for about ~3 years, which taught me that the most valuable thing I could do was drive discussions to decisions, quickly and mostly painlessly.

Your job is to run good meetings to conclusions - any meeting which causes a follow-up meeting is a bad one.

However, that job get immensely harder if you can't understand complex technical things and tie-break decisions quickly. If your feet are not on the ground, you can't understand exactly why someone wants an API to be cut exactly at this level of abstraction.

If you have a bunch of motivated people working for you, this works in your advantage as they will grab you before the meeting to make sure you understand exactly what they are going to present & if both sides do it, then you will come into the meeting with more information than you could have gathered on your own.

And then the project will go ahead, things will break, whichever fork was taken. If you cannot jump in at that point to fix things or at least roll up your sleeves to get your hands dirty, then your opinion will slowly stop mattering to people.

So after quarterly planning has been done, you need to dig up some time to get into the thing that you think is the most risky thing that was decided upon, but work on it instead of asking for status reports.

About 6 hours of my weeks used to be 1:1s with people, mostly outside the office and on walk in a loop.

This happens because you are influential in the organization as a senior engineer - you get told the struggles, hopes and expectations of engineers, which allow you to run backchannels into the management tier whether it is about recognition, money or just personal stress factors.

All of this stops working when you aren't able to do the work that an IC can do, but your other 50% of time is made more valuable by the 50% of time you spend fixing things in the guts of the system. I'm only half kidding, mostly I could only do a day a week of coding at best, the rest is just eaten up like this.

gopalv··on Device uses wind to create ammonia out of air
> Insert national security, wrong hands blah blah

That isn't a big reach.

Ammonium nitrate is already controlled in several parts of the world

https://en.wikipedia.org/wiki/ANFO

gopalv··on Software Folklore
Dealing with a "more magic switch" this week with Claude.

The AI prompting business feels a lot more like the analog circuit where something being "near" something else causes capacitance or inductance without actually being connected.

What is old is again new!

gopalv··on Mark Zuckerberg says AI could soon do the work of Meta's midlevel engineers
> there won't be any seniors

In the SFBA, Lockheed hires welders who can get a security clearance.

Someone I know was in their 70s working there, because there isn't a large pipeline of welders to pull from. In his words, "there's a bunch of great guys with steady hands delivering doordash, because it pays better than being an apprentice in a body shop".

Most automotive welders can't get a clearance, the true factory welding jobs no longer pay well or are automated away.

In response, the old Martinez chevrolet factory welders are continuing to work in Lockheed with larger than normal incentives to stick around past their medicare and social security pay.

Most of them would rather be training new guys (or girls, apparently half of the good new welders are women), but most of the time there's nobody new who comes in.

gopalv··on Writing a simple pool allocator in C
> with Claude

The comment itself is AI generated or the code reference?

Here's some of my old code

https://github.com/php/pecl-caching-apc/blob/0dd2a69bab58822...

gopalv··on Starlink is now cheaper than leading internet provider in some African countries
> Although as a customer i'd love to just use Starlink and pay less for better quality of service

The radio spectrum is far more limited, so the more people use it, the slower it should get.

> If these companies shutdown because of international competition, it's money going to the US

The ideal "free market" result of this is that the ISP lowers prices in response or improves the service, in a rational competitive market.

The question is about customer density - the ISPs + fiber works great with density in miles while Starlink works better with lower density.

So hopefully the cities get better wired and villages get better wireless at the same time.

gopalv··on 28h Days: year 1 update
> You can live your life to the maximum extent, without scheduling in the extra time to manage getting to sleep, and feeling tired when you don't.

I did this for a year when I was caring for my dad and working at the same time, but remember that this process makes you almost completely alone because your breaks do not line up with the world around you.

I would wake up at 7 AM on a monday, to attend the weekly planning meetings & keep slipping by about 1 hour every day of the week, so by Thu I am waking up after noon & I tended to just work through the night on Fri to sleep near dawn on Saturday.

The problem was that Fri nights and weekends are when people are mostly ready to socialize or relax, I would literally sleep through the day on Saturday and wake up close to 4 AM on Sunday.

Then go to sleep around 7 PM on Sunday, because I woke up so early and then monday I wake up with 12hours of sleep.

Lost weight from skipping meals by sleeping.

This felt completely awesome from a personal standpoint & also from the friends I had on IRC, but from an IRL standpoint it was very odd.

I definitely looked like a shut-in, even I grew my hair out simply because I did not have the time to go get it cut during business hours.

Then my dad died, which ended that chapter in an unexpected way.

I remembered those days when I had my first kid, the experience was shockingly similar when it comes to perturbed sleep schedules.

gopalv··on Writing a simple pool allocator in C
+1 - this isn't even that hard, it is include a single header + annotate allocations/frees, with some redzones around the actual allocation to know when the user-code is writing into the pool pointer areas.

https://developers.redhat.com/articles/2022/03/23/use-valgri...

gopalv··on How I program with LLMs
> That he says LLMs make him more productive at all as a hands-on developer, especially around first drafts on a new idea, means a lot to me personally.

There is likely to be a great rift in how very talented people look at sharper tools.

I've seen the same division pop up with CNC machines, 3d printers, IDEs and now LLMs.

If you are good at doing something, you might find the new tool's output to be sub-par over what you can achieve yourself, but often the lower quality output comes much faster than you can generate.

That causes the people who are deliberate & precise about their process to hate the new tool completely - expressing in the actual code (or paint, or marks on wood) is much better than trying to explain it in a less precise language in the middle of it. The only exception I've seen is that engineering folks often use a blueprint & refine it on paper.

There's a double translation overhead which is wasteful if you don't need it.

If you have dealt with a new hire while being the senior of the pair, there's that familiar feeling of wanting to grab their keyboard instead of explaining how to build that regex - being able to do more things than you can explain or just having a higher bandwidth pipe into the actual task is a common sign of mastery.

The incrementalists on the other hand, tend to love the new tool as they tend to build 6 different things before picking what works the best, slowly iterating towards what they had in mind in the first place.

I got into this profession simply because I could Ctrl-Z to the previous step much more easily than my then favourite chemical engineering goals. In Chemistry, if you get a step wrong, you go to the start & start over. Plus even when things work, yield is just a pain there (prove it first, then you scale up ingredients etc).

Just from the name of sketch.dev, it appears that this author is of the 'sketch first & refine' model where the new tool just speeds up that loop of infinite refinement.

gopalv··on My little sister's use of ChatGPT for homework is heartbreaking
> What's the point of homework if they're not going to do it themselves and they're not going to learn?

My theory is that most homework is given to ensure the parents take an active interest in the kids education.

The fact that the kid needs help to do it is part of the goal, but completely impractical in a small family with 2 working parents.

Unfortunately, the homework is all done in the after-care program, where the high school kids who work there spend the time getting the homework done.

Not exactly what the teacher intended.

gopalv··on I am rich and have no idea what to do
> When you have enough money to not work, it becomes very lonely fast

I haven't made enough to not work but once my US immigration was sorted out (H1B isn't very leisure compatible), I took a year off to rediscover what all passed me by when I was working.

This was a lot of alone time, but not true loneliness.

For example, I would set up lunch with a friend, they would bail due to work emergencies or something but I would go eat there anyway.

Quickly learned to go to a place where multiple people were scheduled anyway, like heading to Berkley for a tech talk on Byzantine block chains or vector search algorithms, hoping something would interest me.

> OP seems to be going through a belonging crisis. Trying to figure out what group he wants to belong to

The first three months were a strange struggle with my Ego, because a large part of my "Get up and do things" was the belief that what I had to do was very important to others and the whole world stops if I stop moving. To get through the waves in life without feeling self pity about it, I honestly felt my work was what made the sun rise and the rain fall.

Suddenly, my self importance was shot to pieces immediately.

I wasn't important anymore, what I did wasn't important to others but only to me. All the years of sacrificing my own wants (not needs) suddenly felt dissonant.

Plus a lot of activities aren't cumulative in the way work is - cooking dinner today does nothing for dinner tomorrow, there's no way to add up that to something.

Work is particularly rewarding because it checks those two boxes for me - it adds up to something, slowly every day, plus what I do is important to others in way where they want you to succeed (unlike say training for the SF marathon, where it's all "I could never" from people who could, but don't want to).

Eventually, I went back to work, but now I drink that workahol in moderation.

← PreviousPage 6 of 25Next →