Hacker News new | past | comments | ask | show | jobs | submit | sickblastoise's comments login

Dealing with some ex googlers at my current (non tech company) now, Jesus Christ they are culture killers at regular companies.


I know at my last job I closed any resumes that had Google on them. They generally didn’t do well at startups in my opinion, the scope and responsibilities are too broad and there is no where to hide. And the ones I did hire tended to want to make everything look the way it did at Google.


That seems a little much; Google has had such a huge number of software employees, that it seems unwise to draw assumptions about everyone based on what I imagine has been a much smaller sample size than the total that you've personally worked with.

exactly this. Working with a couple ex-google and ex-facebook. Without failing every meeting we hear at least once "At Google/Facebook we used to ..." for something that is completely not applicable here.

I work at one of the big companies and some people do that even here. People just talk about their experience or other systems that they know. It always feels conservative to me, as often it's said to suggest emulating what some other group or company did to solve an often superficially similar problem, but with entirely different constraints. I think some people with certain kinds of thought patterns just pattern match and try to apply past experience a bit too broadly.

And he just secured a massive salary increase for his constituents, in short time. As a member of the labor class of society, I can’t help but cheer him and the union on.


On some level I think everyone admires a mobster, but he and his union are parasites enriching themselves at literal public expense. This “labor class” nonsense is just an identity racket that helps them get away with it. You might as well have said “I’m a mark and I’m proud of it!”


It’s not wrong to use dicts, it’s just bad practice when you could use something like a dataclass or pydantic model instead.

Dicts are useful for looking things up, like if you have a list bunch of objects that you need to access and modify, you should use a dict.

If you are using the dict as a container like car={“make”:”honda”,”color”:”red”}, you should use a proper object like a class, dataclass, or pydantic model based on whether you need validation, type safety, etc. This drastically reduces bugs and code complexity, helps others reason about your code, gives you access to better tooling etc.


This looks great, actually using streaming for responses is a nice touch.

Having built a few front end ai chat features, one of the key things is making sure the llm provider is swappable, and that chat history is stored in your own database.

The architecture I typically use is chat frontend (usually react) -> custom llm wrapper api -> openai/anthropic api | my own db for chat history .

Would this be able to support calling my custom llm wrapper out of the box?


Exactly, things like changing the signature of the api for chat completions are an example. OpenAI is looking for any kind of moat, so they make the api for completions more complicated by including “roles”, which are really just dumb templates for prompts that they try to force you to build around in your program. It’s a race to the bottom and they aren’t going to win because they already got greedy and they don’t have any true advantage in IP.


That’s a great analogy! The chemical imbalance thing has always sounded to me like there “are spirits in the system”


The brain imbalance narrative really is a double-edged sword.

On the one hand, it can help people understand that a condition is real and not imagined, especially other than the sufferer. "Look at this brain scan, it looks different from a healthy person's" is quite tangible and convincing.

On the other hand, it can lead to a sense of helplessness, and notions that because there's a physical element to the mental illness, it's a permanent disability, or to be exclusively treated with pills and injections. That just doesn't follow. Sometimes it's true, but in many cases, lifestyle interventions can help, talk therapy can help.


That's just your projection. A proper neurological diagnosis can absolutely help a patient find a viable path to recovery, as well as enable them to find support groups.

And not every neurological disorder is fixable. And the question of whether this is "sometimes" or "in many cases" is still in the air, unless you can provide solid citations proving otherwise. So there is no need for this kind of judgement.


Yeah dude I think you're the one who is projecting. You're reading a lot into what I wrote that just isn't there.


I'm addressing the words you wrote, mainly this idea that learned helplessness is a significant concern when diagnosing chemical imbalances. Learned helplessness is tangential to a proper diagnosis, there is still CBT and other techniques for developing coping mechanisms around mental health issues, but those cannot be utilized without first receiving a diagnosis.

For example, in the case of ADHD, it s clear that patients have a reduced dopamine receptor count. It's not just a chemical imbalance, it's structural. Medication is the only effective solution for severe cases, and the result is night and day. Knowing this helps me make better decisions around my diagnosis, and also alleviates the great shame and anxiety that come hand in hand with ADHD.

I don't wish to devolve into an argument and I apologize if my initial comment was too aggressive.


I think this is a major selling point. If developers could upload their CVs, exercise could package together the users yoe + industry experience with the users learning veracity + main language. I think that would be a solid product that hiring people would pay money for.


The issue is we don’t actually recognize that there are two very different careers that fall under the “software” umbrella.

One is developing hard software, software that needs to be performant on a hardware level. Like operating systems, low level libraries, embedded software, databases. The ability to quickly identify and apply data structures and algorithms leetcode style is very important in hard software.

The second is soft-software, which needs to be performant on the organizational budget/timeline level. This type of software engineering is more about glueing together hard software in the right way to solve business problems. Leetcode style interviews make no sense here, because the glue is usually bash or Python and it isn’t really doing much besides orchestrating hard software and delegating work to it.


And yet it's still not clear that the standard anxiety-driven interview process is in any way helpful for sussing out actual performative ability in the former category.


Imagine you were to pause and take an exact carbon copy of the exact physical state of the universe in the current moment. When you press play in both universes, both universes will play out the exact same way into the end of time, and you would never be able to tell the two apart. That is determinism.

If the universe were not deterministic, for reasons like non-deterministic physics, souls existing, etc. you would potentially see difference between the two as they played out separately.

Another way to think about determinism vs non-determinism is that if something is deterministic, then if you have perfect information about it, you can predict it’s future states exactly. On the flip side, if something is non deterministic, no matter how much information you gather about it, you will never be able to exactly predict its future states (only probabilistically).

Einstein is not so subtly telling us “god doesn’t play dice”, that there are no random physical properties of the universe, and that magic (like souls) doesn’t exist, in his opinion.

Free will means we have a choice in what we do next, but if we go and examine your carbon copy in the other universe you will see they did all of the same things you did. Furthermore if we were granted perfect information about the universe and had a good enough gpu, we could from the physical principles of the universe predict the future state of everything in the universe until the end of time, including all of your future choices, hence no free will.

My thoughts are that people are mixing up the human concept of free will — freedom to make decisions based on how you feel and what you know - with determinism, that the first state of all matter in the universe determined all future states of the universe, and that these are inevitable. The fallacy is that free will in the sense of determinism is only important to human decision making if we have perfect information about the current state of the universe, which we don’t - so until we do, we have to keep guessing what happens next.


Sqlalchemy stands out as a library having probably one of the most complete and pragmatic APIs for database access across all languages.

It is no small feat to create compatibility for modern Python features like type hints and async in a library that has its roots in Python 2, it has absolutely exceeded expectations in that regard.


> Sqlalchemy stands out as a library having probably one of the most complete and pragmatic APIs for database access across all languages.

I can't disagree more. Identity map based ORMs are _awful_ to use, in almost every way.


What's your gripe with identity map specifically? The map is bound to a session which are short lived in SQA and usually map to a single transaction.


What’s bad about them?


Sqlalchemy in general is great but the data class integration feels non pythonic to me, due perhaps to catering first to the typing crowd instead of the ergonomic one.


I felt that too but over time decided that it compromised the theoretical pythonicity for the practical compromise of being flexible enough to work properly with SQL.

One other reason for its popularity and success is how engaged the orginal developer is with the overall community.


What they need is a proper migration diff and generation tool with strong defaults. Alembic is meh and the DX is poor. Prisma and Django's migration/diff tools are the gold standard.

(There's also Atlas for Python but it isn't much better, a lot of fiddly config files https://atlasgo.io/guides/orms/sqlalchemy)


Prisma defeats the entire point of sql with it's weird almost graphql like thing. Apparently developers can't be trusted with it cause you can do big dumb in it.


Alembic is amazing. I haven't found a better tool in any language. I actually use it even when I don't use python as the main language


Agreed, SQLAlchemy impressed me a decade ago and it still does today.


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: