They can actually - I thought they couldn’t , but the latest ones can, much to my surprise.
I changed my mind after playing with cursor 2 ( cursor 1 had lasted all of 10 mins), which actually wrote a full blown app with documentation, tests , coverage, ci/cd, etc. I was able to have it find a bug I encountered when using the app - it literally ran the code, inserted extra logs, grepped the logs , found the bug and fixed it.
> One objection I hear a lot is that LLMs are only good at greenfield projects. I'd push back hard on this. I've spent plenty of time trying to understand 3-year-old+ codebases where everyone who wrote it has left.
Where I am, 3 year old is greenfield, and old and large is 20 years old and has 8million lines of nasty c++.
I’ll have to wait a bit more I think …
Yes I did feel the same, and it boiled down to accepting I had to try something new that I thought I didn’t want or be happy with what I already had . You have several options I guess.
- it’s very likely you haven’t mastered all layers of the stack - you maybe have mastered the parts you’ve come across though. Would you include Linux kernel development, program proofs, HPC , math-oriented software, compilers, firmwares, fpgas, database internals ( I mean, writing a full database engine ), big iron infrastructure , actual research etc in the list of things you’ve mastered? That’s what I did for many years ( not necessarily these topics ) - keep exploring , the field is massive. In my experience, the more you look around the more you realize that you haven’t seen it all, and even less mastered it.
- now, in my case, after doing just that ( trying new technical things) I realized I was getting increasingly interested in the overall technical strategy and interplay with people more so than the purely technical side of things. I had vowed I would never get into the higher spheres … but I am now essentially a principal engineer ( or whatever you call that but basically I lead some technical stuff ) for a very large org. This is not management , and I really like it. I keep learning about people and business, about how changing something big is hard and human , and balancing technical problems with human ones . It’s fascinating, and above all grounded in technical knowledge so I don’t feel like I’ve thrown away a significant chunk of my career.
In particular, if you feel that you’re not being listened to but would like to, maybe you’d be interested in that kind of job. If you’re saying you’re not always succeeding at persuading people , it probably also means there’s growth for you here, and satisfaction down the line.
- actually get into management , which like most topics is actually interesting once you get into it. It’s just different. I thought I didn’t like it - I actually do and that was a colossal surprise to me.
Whether it’s technical leadership or management, these skills can be learned, and they make the bits that you don’t like much more palatable, and the bits that are ok very enjoyable. I was lucky enough to meet very good people who taught me properly. I think this is very important. I can cook at home, but if I get proper training my food will be better and I will enjoy the process a lot more ( try chopping vegetables with no training - you’re slow as hell and it ruins everything)
- do something unrelated ( cooking etc ). To be honest, at some point I did my job but the more fulfilling exploration part of my life was at home and revolved around food. I did consider changing career completely but decided it was too risky.
To a large extent, there is limited value to your extensive knowledge if you remain at the bottom because it will always have limited impact. You seem to want the power and influence ( for good reasons !), but don’t seem to want to learn the skills that are required . ( at least management, you seem interested in technical leadership). I guess you have to choose. It’s very hard, but liberating.
You mentioned family - I also made sure I was in a good place at home when I switched. I found it hard but support from my wife helped tremendously.
Thanks for the insights. I have been in technical leadership positions in the past, but disliked the management part. I think that the other dilemma is that I don't like big companies, as I've only had negative experiences and I get frustrated because even the most tiny thing can take forever to be done.
> it’s very likely you haven’t mastered all layers of the stack - you maybe have mastered the parts you’ve come across though.
I was meaning that in the context of web dev. There are certainly other areas I don't know much yet.
> Would you include Linux kernel development, program proofs, HPC , math-oriented software, compilers, firmwares, fpgas, database internals ( I mean, writing a full database engine ), big iron infrastructure , actual research etc in the list of things you’ve mastered?
Definitely not (except partially a database engine), but I'd definitely like to move down the stack. I like systems programming, low level stuff and optimization problems, so that's maybe the main area that I should explore (and also one of the reasons I like game dev). Translating that into an actual job might be harder thought.
Maybe I’m misunderstanding something - if I store my data elsewhere , am I not supposed to encrypt it anyway, with my keys ? If the crypto is strong enough then surely cloud providers can’t do anything with it ?
> Maybe I’m misunderstanding something - if I store my data elsewhere , am I not supposed to encrypt it anyway
"Cloud" is not only for storage; it's also for compute. Doing compute directly on encrypted data (homomorphic encryption) is very slow and very complicated, so when using a cloud, the data is usually either unencrypted, or encrypted but the key is elsewhere in the same cloud.
I get that FHE is not realistic today, but can’t I use ( if it’s really critical) a combination of confidential vms and an external hsm ? I understand I’ll be limited to traditional workloads , and not managed services though.
I asked the wrong question, what I really meant was ‘if I run in a less trusted environment, am I not supposed to use all possible crypto mechanisms available to make that environment more trustworthy , so that I can’t be deceived by my cloud operator sending my data to the us government’
That's just not possible. It's why detractors never got on board with the Cloud. Until FHE is feasible, the decryption keys and plaintext have to exists in RAM eventually at some point in order even if only took be re-encrypted, if any complex work is to be done on it. Because eg, Amazon, has access to your hardware, there's simply no way to prevent them from reading your secrets out of your VM that's using their RAM.
Absolutely do what you can, but understand that it's futile to defend against your own cloud provider.
Ok I thought that was the whole point of things like Intel TDX , AMD SEV and various enclave mechanisms which provide full ram encryption and attestation ?
The only issue left would be managed services though, which then I wouldn’t use, but I’d be able to run my own postgre safely on infra I’m renting.
Supposedly, yes, but in a world that was caught flat footed with RowHammer, Spectre, and Meltdown; if I wouldn't trust those with a lot of other people's lives within a shared Cloud environment.
Intel's SGX has been broken a number of times and that should be harder to break than TDX. Like I said in my original comment though, do all the things. But if you find yourself relying on TDX to protect live(s), please pay a computer security professional to audit your security and do a threat assessment.
I’ll do all the things if ever needed, but I get that if a cloud act request happens , your cloud provider will be able to get your stuff.
I’m specialized enough in another field to know that I’m not a security person in spite of my interest in it ( I used to enjoy reverse engineering back in the days ) - I wouldn’t make that kind of decision without consulting a professional first.
I do mostly agree with you that Steam is better as a storefront than all other ones out there, but in my opinion the Battle.net launcher is still my favorite game launcher edging out Steam because of how snappy it is.
Steam just sometimes feels really slow when launching for the first time or when switching tabs/pages (I do also have it just sometimes be just a black windows, but I haven't figured out the cause yet but it is the only window that does it, so...). In comparison B.net just feels decently snappy.
They are both effectively using CEF for their launcher, but since Steam starts so slow for me I always keep it in the background and its WebHelper taking up 414MB (rn, but its always in that ballpark) is not helping its case.
People favored Google as much as possible in the '00s and then they turned evil.
For games, I favor Good Old Games rather than Steam as much as possible and go out of my way to wait for releases on their platform. Whatever becomes of them, at least I'll have my downloaded DRM-free version of my purchases.